2

当我运行以下 R 代码来可视化伊利诺伊州的人口密度时,地图的底部被从图中切掉/裁剪。我不知道为什么会这样,因为我在其他州没有问题。

除此之外,如您所见,整个地块都向上移动。这是因为数据中的经度和纬度值不相等吗?

 # query map and plot
 library(ggmap)
 library(ggplot2)

 # State of Illinois
 illinois <- get_map(location = "illinois ", 
            source = "stamen", zoom = 7, maptype = "toner")
 il <- ggmap(illinois) + geom_point(data=il_pop, 
        aes(x=INTPTLON, y=INTPTLAT, size=TOTPOP, colour="areaname", alpha=0.1), 
        colour="gold2") + scale_size(range=c(0,10)) 
 il <- il + opts(legend.position="none")
 il

在此处输入图像描述 编辑:这是缩放 = 6 的输出。这对我来说太缩小了,当我缩小时,点的位置看起来更糟。有没有办法让我的缩放保持在 7 并获得一个矩形地图?

另外,这是我使用的数据:

    ZCTA3 ZCTA5         AREANAME INTPTLAT  INTPTLON TOTPOP POPPERSQM
1      600 60002          ANTIOCH 42.46617 -88.09995  19350     575.3
2      600 60004 ARLINGTON HEIGHT 42.10843 -87.97724  53118    4721.8
3      600 60005 ARLINGTON HEIGHT 42.06933 -87.98465  28884    4465.5
4      600 60007 ELK GROVE VILLAG 42.00598 -87.99847  35281    2265.9
5      600 60008  ROLLING MEADOWS 42.07506 -88.02509  23406    3267.3
6      600 60010       BARRINGTON 42.16079 -88.15231  40110     565.7
7      600 60012     CRYSTAL LAKE 42.26564 -88.31664  10087     486.3
8      600 60013             CARY 42.21752 -88.24339  24079    1556.7
9      600 60014     CRYSTAL LAKE 42.22662 -88.33067  44525    1998.7
10     600 60015        DEERFIELD 42.16933 -87.86557  27291    2174.9

在此处输入图像描述

4

1 回答 1

4

在您请求的缩放级别,即地图的范围。它位于皮奥里亚附近(显然)。在zoom=6处,你得到你展示的程度。在zoom=7处,您将获得更大的地理区域(当然,细节更少)。由于您的人口已经用 lat/long 编码,您可以使用它的范围(可能带有一些填充)来创建一个 lat/long 边界框并将其location用于get_map.

于 2012-09-27T22:34:36.323 回答