2016-04-22 1 views
0

Est-il possible de créer un diagramme de dispersion dans R et de colorier les points par catégorie? Par exemple, j'ai un jeu de données avec une liste de points x et y (les deux colonnes 'Xpoints' et 'Ypoints' ont des échelles de 0 à 100), mais chaque point x combiné correspond à l'une des cinq catégories (dans un troisième colonne "Catégorie"). Je voudrais tracer tous les points combinés x & ET colorier chaque point par sa catégorie respective. Je suppose que les cinq catégories devraient attribuer les numéros 1 à 5 dans une colonne supplémentaire. Mais quel serait le code pour tracer cela?Coloriage diagramme de dispersion par type dans r

Répondre

2

Utilisez le package ggplot2 qui est largement utilisé pour les applications de ce type.

# toy data 
my_data <- data.frame(x = sample(1:100, replace = T, 100), 
         y = sample(1:100, replace = T, 100), 
         cat = sample(c('first', 'second', 'third'), replace = T, 100) 
        ) 

# required packages 
require(ggplot2) 

# make the graph 
ggplot(data = my_data, aes(x = x, y = y, color = cat)) + 
     geom_point() 

ggsave(height = 4, width = 4, filename = 'SO36801313.png') 

Le code ci-dessus fournit le graphique suivant. enter image description here

0

C'est une tâche vraiment facile pour le paquet graphique Lattice. Il est spécialement conçu pour l'analyse multivariée, qui peut gérer très facilement. Je charge l'ensemble de données iris pour fournir un exemple.

library(lattice) 
data("iris") 
names(iris) 

Lattice permet parcelles multifacette immédiats, montrant la relation entre deux variables en fonction d'un troisième. Dans ce cas, nous avons examiné la relation entre la longueur de sépale et la largeur de sépale de la fleur, mais pour chaque species dans l'ensemble de données. Il est exprimé avec la formule x ~ y | z.

xyplot(Sepal.Length ~ Sepal.Width | Species, data = iris) 

enter image description here

Pour votre cas, nous allons tracer toutes les observations dans un seul tracé standard. Dans ce cas, l'argument groups colorera automatiquement chaque observation en fonction des critères que vous choisissez, dans ce cas, species à nouveau.

enter image description here