Facet_Wrap和Scale Axis使用ggplot2,r

时间:2012-05-29 23:28:50

标签: r maps ggplot2 facet-wrap

我希望在新西兰奥克兰有多张地图显示点值。问题是我有一个背景shapefile(land)来向地图添加背景细节,这意味着自由尺度x y缩放到整个奥克兰地区而不是点空间范围。

所以我的问题是:如何基于点层实现不同的空间范围,并使facet_wrap忽略其他范围?

以下是当前代码:

map1 <- ggplot(walk, 
           aes(x=coords.x1, y=coords.x2, colour=UD_TOTAL, size=UD_TOTAL)
           ) +
      scale_colour_gradient(low="#003300", high="#00FF00", space="rgb") + 
      opts(panel.background=theme_rect(fill="#404040", colour = "#404040")) +
      quiet +
      pland + 
      geom_point() +
      facet_wrap(~School2, ncol=3, scales='free') 

map1

注意:此地图是模仿http://spatialanalysis.co.uk/2012/02/great-maps-ggplot2/

的尝试

初学者很遗憾我无法发布图片。

1 个答案:

答案 0 :(得分:2)

感谢Charlotte Wickham的建议,我找到了一个新的功能'annotation_map',其中包含了忽略的方法。我没有通过这本书在我的研究中发现它,但在这里找到:http://cran.r-project.org/web/packages/ggplot2/ggplot2.pdf

更新的代码是:

map1 <- ggplot(walk2, 
        aes(x=coords.x1, y=coords.x2, colour=UD_TOTAL, size=UD_TOTAL)) + 
        scale_colour_gradient(low="#003300", high="#00FF00", space="rgb") + 
        opts(panel.background=theme_rect(fill="#404040", colour = "#404040")) +
        annotation_map(BuiltEnv, fill="#4F4F4F", colour="#4F4F4F") +
        geom_point() +
        facet_wrap(~School2, ncol=3, scales='free') +
        coord_map(project="mercator")
map1