r - spplot图例在 map 中的自定义位置

标签 r gis spatial lattice sp

是否可以将 spplot(spplot 多边形)图例放置在 map 内的左下角,像这样?

enter image description here

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

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

但是图例在页面中间并且在 map 之外。不幸的是,colorkey参数不支持“bottomleft”、x、y 或角参数(参见 ?levelplot)。我也尝试使用 key.space参数,但它似乎只在绘图时有效 SpatialPoints*但似乎忽略了 SpatialPolygons* (或如上例中的 SpatialPixelsDataFrame )。

最佳答案

由于 key 是它自己的一个grob,因此完全可以从绘图对象中提取它并在您喜欢的任何地方单独绘制它。

library(grid)

#  Separate plot and key
s <- spplot(meuse.grid[,'dist'],
    colorkey = list(space = "left", height = 0.5)
)
key <- draw.colorkey(s$legend[[1]]$args$key)
s$legend <- NULL # Otherwise we'd get two keys

# Modify key
key$framevp$x <- unit(0.15, "npc")
key$framevp$y <- unit(0.68, "npc")

# Plot
s
grid.draw(key)

enter image description here

关于r - spplot图例在 map 中的自定义位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29344692/

相关文章:

javascript - 我想在 Openlayer map 上单击鼠标添加这些圆圈

使用 POINT 的 Mysql 空间距离 - 不工作

mysql - 在 MySQL 5.0 中创建 MySQL 空间过程

r - Shiny:如何使用默认值初始化 react 值

python - 使用 Python GDAL 库将矢量 (.shp) 转换为栅格 (.tiff)

r - 如何在 ggplot2 的同一张图中为不同的分位数添加不同的图例?

R - 从大型栅格(不包括 NA 值)高效创建数据帧

mysql - mysql 中的几何和地理数据类型

python - 文件排列

r - 预测 cv.glmnet 为每一行 r 提供相同的值