Usando símbolos propios para puntos ggplot, cambiando símbolos de leyenda para que coincidan
Frecuentes
Visto 597 equipos
3
Estoy trazando una serie de puntos de datos, para los cuales necesito símbolos/formas muy específicos para representar cada país (en realidad no es un país, pero el grupo real no tendrá sentido; estoy copiando un gráfico antiguo y quiero mantener los símbolos coherente). Hay nueve países diferentes para trazar. La forma más fácil que he encontrado para hacer esto hasta ahora es codificar los símbolos que quiero en el marco de datos real de esta manera:
Point y x Country
V 0.316 0.073 UK
P 0.284 0.053 USA
% 0.284 0.061 Germany
+ 0.314 0.072 France
| 0.268 0.075 Spain
h 0.313 0.0758 Canada
# 0.121 0.0623 Australia
i 0.234 0.0765 India
C 0.213 0.059 Norway
y luego trazando así:
ggplot(data, aes(x, y, label = Point, colour = Point)) + geom_text()
Pero esto no es particularmente bueno cuando se trata de la leyenda:
¿Cómo podría hacer esto para que los Puntos se conviertan en los símbolos de la leyenda y luego pueda tener los países como las etiquetas de la leyenda?
1 Respuestas
4
poner shape=country
dentro aes()
y elige símbolos usando scale_shape_manual()
x=rnorm(10,1,2)
y=rnorm(10,1,2)
country=letters[1:10]
data=cbind.data.frame(x,y,country)
require(ggplot2)
ggplot(data,aes(x,y,shape=country))+
geom_point(size=6)+
scale_shape_manual(values=c("V","%","µ","@","#","V","%","µ","@","#"))
Respondido el 12 de junio de 14 a las 14:06
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas r ggplot2 or haz tu propia pregunta.