如何在R中将OpenStreetMap与地点结合起来

3

我刚开始学习R语言,尝试创建一个显示康涅狄格州每个镇学生人数的地图。我有一个包含地点和招生信息的.csv文件,格式如下:

name       lon      lat resStudent
1   ANDOVER          -72.37472 41.73278        657
2   ANSONIA          -73.07900 41.34621       2999
3   ASHFORD          -72.12162 41.87307        736
4   AVON             -72.83052 41.80962       3563
5   BARKHAMSTED      -72.97222 41.92917        680
6   BEACON FALLS     -73.06176 41.44265       1039
7   BERLIN           -72.78064 41.61460       3165
8   BETHANY          -72.99250 41.42556       1028
9   BETHEL           -73.41396 41.37123       3034
10  BETHLEHEM        -73.20861 41.63917        490
11  BLOOMFIELD       -72.73336 41.83945       2484

我已经能够使用以下代码生成我想要将此信息叠加到上面的地图:

tempMap <- get_openstreetmap(bbox = c(left = -73.8, bottom = 40.9, right = -71.7, top = 42.1), scale = 829486, color = "bw")
ggmap(tempMap)

我在将两者结合时遇到了问题。以下是我使用的代码:

enrollData<-read.csv("enrollData.csv")   
enrollMap <- tempMap + geom_point(data = enrollData,aes(x = lon, y = lat, size = resStudent)

运行后,我收到一个错误消息,内容如下:
Error in Ops.raster(tempMap, geom_point(data = enrollData, aes(x = lon,  : 
  Operator not meaningful for raster objects

有没有解决这个问题的想法?

你尝试过这个吗: ggmap(tempMap) + geom_point(data = enrollData,aes(x = lon, y = lat, size = resStudent)? - johannes
酷!有截图吗? - Harry Wood
这是使用云图而不是OpenStreetMap的屏幕截图:http://twitpic.com/caglh1 - alspur
1个回答

4

您需要先调用ggmap来创建基础图层。以下是应该起作用的代码:

ggmap(tempMap) + geom_point(data = enrollData,aes(x = lon, y = lat, size = resStudent)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接