5

我正在查看 Hadley Wickham 的以下示例ggplot2

library(ggplot2)
library(maps)
states<-map_data("state")
arrests<-USArrests
names(arrests)<-tolower(names(arrests))
arrests$region<-tolower(rownames(USArrests))

chloro<-merge(states, arrests, by="region")
chloro<-chloro[order(chloro$order), ]
qplot(long, lat, data=chloro, group=group, fill = assault, geom="polygon")

然后,我想在地图上添加一些著名的美国城市的积分,但我没能做到。我试过了:

base_map<-qplot(long, lat, data=chloro, group=group, fill = assault, geom="polygon")
base_map + qplot(long, lat, data=us.cities) + borders("state", size=.5)

但我收到以下错误:

Error in p + o : non-numeric argument to binary operator
In addition: Warning message:
Incompatible methods ("+.ggplot", "Ops.data.frame") for "+""

我怎样才能添加这些点?

4

1 回答 1

7

这对我来说似乎很好用:

base_map + 
    geom_point(aes(long, lat,fill = NULL,group = NULL), size = 1,data=us.cities) + 
    borders("state", size=.5)

尽管您可能想要排除 HI 和 AK 中的城市,就像我在制作这个版本的情节时所做的那样:

在此处输入图像描述

于 2012-09-09T18:20:32.007 回答