Skip to content

[R-es] Etiquetas en gráfico de dispersión

3 messages · Gemma Ruiz-Olalla, Carlos Ortega

#
Buenas tardes,

Tengo un gráfico de dispersión y quiero indicar cada punto a qué individuo
corresponde. ¿Cómo añado estas etiquetas de datos?

El código es:

res<-cmdscale(fst,k=2)
plot(res[,1],res[,2],lwd=2,xlab="x",ylab="y")
abline(h=0,v=0,col="blue")

Muchas gracias,

Gemma
#
Hola,

A tu data.frame "res" tienes que añadirle una columna nueva donde indiques
el color que quieres asociar a cada fila y luego usar esa columna en el
plot. El código te quedaría de esta forma:

#------------------
res<-cmdscale(fst,k=2)

res$mycolor <- asigno_colores_a_cada_fila

plot(res[,1],res[,2],lwd=2,xlab="x",ylab="y", col=res$mycolor)
abline(h=0,v=0,col="blue")
#------------------

Para la asignación de color a cada fila en función de algún valor, suele
venir muy bien la función "ifelse()".

Saludos,
Carlos Ortega
www.qualityexcellence.es

El 31 de mayo de 2015, 19:18, Gemma Ruiz-Olalla <gemma.ruizolalla en gmail.com>
escribió:

  
    
#
Hola,

Pensé que lo que querías era utilizar un color para cada grupo de puntos.
Si lo que quieres es añadir una etiqueta al lado del punto, lo que tienes
que hacer es utilizar la función "text()". De nuevo sobre tu código:

#------------------
res<-cmdscale(fst,k=2)
plot(res[,1],res[,2],lwd=2,xlab="x",ylab="y")
abline(h=0,v=0,col="blue")


*myLabels <- "tus_etiquetas"*
*text(res[,1], res[,2], labels=myLabels, cex=0.7)*
#------------------

El propio ejemplo de la ayuda de "cmdscale()" incluye el caso que quieres
solucionar...
En este ejemplo las etiquetas son los nombres de las filas de la matriz
"res".

Saludos,
Carlos Ortega
www.qualityecellence.es

El 31 de mayo de 2015, 19:30, Carlos Ortega <cof en qualityexcellence.es>
escribió: