相关疑难解决方法(0)

在地图中自定放置spplot图例

是否可以将spplot(spplot polygons)图例放在地图的左下角,就像这样?

在此输入图像描述

我能得到的最接近的是(我没有发布我的数据,我只是使用示例数据,所以在这种情况下,尝试将图例放在地图的左上角):

data(meuse.grid)
gridded(meuse.grid)=~x+y
spplot(meuse.grid[,'dist'],
    colorkey = list(space = "left", height = 0.5)
)
Run Code Online (Sandbox Code Playgroud)

但是图例位于页面中间,位于地图之外.不幸的是,colorkey论证不支持"bottomleft",或者x,y或者角落参数(参见参考资料?levelplot).我也尝试使用key.space参数,但它似乎只在绘图时起作用,SpatialPoints*但它似乎被忽略 SpatialPolygons*(或者像上面例子中的SpatialPixelsDataFrame).

gis r spatial lattice r-sp

8
推荐指数
2
解决办法
4707
查看次数

使用 R 中的 tmap 包生成插图

我正在尝试制作一张伦敦的插图,以及一张更大的英国地图。我正在使用包“tmap”,我发现它是一个很好的包,特别容易转移到使用 ggplot2 一段时间。但是,关于如何使用 tmap 生成插图的文档有点不清楚。的参考手册描述应该如何能够制造使用插页地图:

    save_tm(...insets_tm = NULL, insets_vp = NULL) 
Run Code Online (Sandbox Code Playgroud)

但不清楚应该如何使用第二个命令 insets_vp。我只找到了一个示例,它实际上提供了使用 tmap 生成 insetmap 的建议语法:

    alaska <- tm_shape(shp_alaska) + … print(alaska, vp=viewport(x=.1, 
    y=.15, width=.2, height=.3)) 
Run Code Online (Sandbox Code Playgroud)

上面代码来源请看这里。这实际上并没有显示美国和阿拉斯加/夏威夷的地图是如何组合的。至于我自己的编码尝试,我尝试了以下(dplyr、magrittr、rgdal、GISTools、RColorBrewer、tmap 都已加载,R vn 3.3.2、RStudio 1.0.136):

  1. 我首先为所有英国 (UK_Im_Sec) 和伦敦 (London_Im_Sec) 创建两个 tmap 对象多边形和点:

    UK_Im_Sec<-tm_shape(UKNI_LA_ll, is.master = TRUE)+
    tm_borders(lwd=0.25)+
    tm_shape(Immobile_residuals)+
    tm_dots(col="Sec_Name", style="cat", palette="Set1", title="Socio-economic background (NS-SEC)")+
    tm_layout(title="Mapping outlier residuals - non-predicted 'immobility' (Social class)", title.size = 3.0,
        title.position=c("center","TOP"),legend.outside = TRUE,
        legend.outside.position = "right",frame = FALSE)
    
    LDN_Im_Sec<-tm_shape(Immobile_resids_LDN)+
    tm_dots(col="Sec_Name", style="cat", palette="Set1", size …
    Run Code Online (Sandbox Code Playgroud)

gis r viewport tmap

6
推荐指数
2
解决办法
2136
查看次数

标签 统计

gis ×2

r ×2

lattice ×1

r-sp ×1

spatial ×1

tmap ×1

viewport ×1