我想绘制一个带有两个轴的图例。具体来说,我已经组合了两个已分类的空间对象,第一个显示事件的强度,第二个显示该位置事件发生的概率。我想创建一个图例,显示组合栅格的像素在每个类别中的位置。我想创建的图例将类似于这样:带有两个轴的图例。
普通的分类数据图例如下所示:原始图例。
这是一个可重现的示例,展示了我使用的数据类型:
如果有必要提供可重现的中间步骤示例(即具有强度/概率光栅的示例),请告诉我,我可以生成这些。
library(raster)
library(rasterVis)
# setseed
set.seed(999)
# create raster (example of what would be the outcome of combining intensity and probability rasters)
plot.me<- raster(xmn=-110, xmx=-90, ymn=40, ymx=60, ncols=40, nrows=40)
val <- c(100:104, 200:204, 300:304, 400:404)
plot.me<- setValues(plot.me, sample(val,ncell(plot.me),replace=T))
###### Plotting
plot.me <- ratify(plot.me)
levelplot(plot.me,att="ID" ,
col.regions=c("#beffff","#73dfff","#d0ff73","#55ff00",
"#73b2ff","#0070ff","#70a800","#267300",
"#f5f57a","#ffff00","#e8beff","#df73ff",
"#f5ca7a","#ffaa00","#e600a9","#a80084"))
最简单的方法是先创建图形,然后在图形编辑器中添加图例...但我相信一定有一种方法可以在R本身中实现这一点!我目前正在使用rasterVis包进行绘图,但如果ggplot或基本R中有答案,那么这些同样受欢迎。如果有必要提供可重现的中间步骤示例(即具有强度/概率光栅的示例),请告诉我,我可以生成这些。
rasterVis
我生成了这张图片。如果这正是您所需要的,请尝试这里提供的代码(链接)(“双变量图例”部分)。 - Oscar PerpiñánReduce
和+.trellis
将此列表合并为全局图。 - Oscar Perpiñán