2014-06-12 3 views
2

나는 각 국가를 나타 내기 위해 매우 특정한 기호/모양이 필요한 일련의 데이터 요소를 계획하고 있습니다 (실제 국가는 아니지만 실제 그룹은 아무 것도 만들지 않습니다). sense - 오래된 그래프를 복사하고 심볼을 일관성있게 유지하고 싶습니다.) 음모를 꾸미는 9 개국이있다. 이 같은 음모를 꾸미고 다음ggplot 포인트에 자신의 기호를 사용하여 일치하는 범례 기호 변경

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 

과 : 지금까지이 일을 발견했습니다 가장 쉬운 방법은 다음과 같이 실제 dataframe에서 내가 원하는 기호를 코딩하는 것입니다

ggplot(data, aes(x, y, label = Point, colour = Point)) + geom_text() 

을하지만이 ISN ' 이 전설에 관해서 t 특히 좋은 :

enter image description here

어떻게 포인트가 전설의 상징이 될 있도록이 작업을 수행 할 수 있고 나는 카운트를 가질 수 있습니다 전설의 레이블로 사용합니까?

답변

3

aes()shape=country을 넣고 사용하여 문자를 선택 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","%","µ","@","#")) 

enter image description here