2012-02-23 6 views
3

세계지도에서 단일 점을 어떻게 그립니 까?어떻게하면 ggplot2를 사용하여 단일 지점을 세계지도에 그릴 수 있습니까?

all_states <- map_data("usa") 
p <- p + geom_polygon(data=all_states, aes(x=long, y=lat, group = group, legend = FALSE)) 
p 

또한 그리드와 lat long 값을 맵에서 제거 할 수 있습니까?

+0

오류 또는 고집 지점을 생성하는 데 사용한 라이브러리를 포함한 모든 코드를 제공해주십시오. 또한 코드 태그에 {code}를 사용하거나 코드 4 줄의 모든 줄을 들여 쓰는 코드를 포함하십시오. –

답변

7
library(maps) 
library(ggplot2) 
world<-map_data('world') 
sf<-data.frame(long=-122.26,lat=37.47) 
p <- ggplot(legend=FALSE) + 
geom_polygon(data=world, aes(x=long, y=lat,group=group)) + 
opts(panel.background = theme_blank()) + 
opts(panel.grid.major = theme_blank()) + 
opts(panel.grid.minor = theme_blank()) + 
opts(axis.text.x = theme_blank(),axis.text.y = theme_blank()) + 
opts(axis.ticks = theme_blank()) + 
xlab("") + ylab("") 
# add a single point 

p <- p + geom_point(data=sf,aes(long,lat),colour="green",size=4) 
p 

는 : 버전부터 0.9.2 optstheme에 의해 replaced을하고있다. 예를 들어 opts(panel.background = theme_blank())theme(panel.background = element_blank())이됩니다.

+1

좋은데, (1) 나는 긴 줄을 깨고 가로로 스크롤하지 않고도 볼 수있다. (2) 플롯'plot' (베이스 -R 플롯 팅 함수의 이름과 동일)을 호출하지 않는 것이 가장 좋다. –

+0

@ BenBolker에게 감사드립니다. – Maiasaura

+1

좋아 보인다. 그러나 여기에는 또 하나의 "잡아"가 있습니다. 이것은 전체 표현을 괄호로 묶지 않는 한'+'기호가 연속 줄의 시작보다는 분할 된 줄의 끝 *에 있어야한다는 것입니다. 그렇지 않으면 R이됩니다. 표현이 완료라고 생각 ... –

관련 문제