我正在使用 R 中的“raster”包从栅格文件创建一些地图。我想创建比较栅格,并排显示多个地图。为此,重要的是,无论每个地图中的值如何,所有地图使用的色标都相同。例如,如果地图 1 的值介于 0-1 之间,而地图 2 的值介于 0-0.5 之间,则值为 0.5 的单元格在两个地图上应具有相同的颜色。
例如:
- 地图 1 的值从 0 到 1
- 地图 2 的值从 0 到 0.5
- 颜色从红色(最低)到绿色(最高)
我希望值 0.5 在两个贴图中具有相同的颜色(即黄色,介于红色和绿色之间)。当前的行为是地图 1 中为黄色,地图 2 中为绿色。
我找不到办法让这项工作发挥作用。我看不到任何方法来设置与绘图函数一起使用的像素值范围。 setMinMax() 没有帮助(因为“plot”总是计算值)。即使尝试手动设置值(例如 g1@data@max
最后,制作一堆地图(可能期望以相同的色标绘制所有内容)也不起作用 - 每个地图仍然有自己的色标。
关于如何做到这一点有什么想法吗?
EDIT:
我最终使用的解决方案是:
plot( d, col=rev( rainbow( 99, start=0,end=1 ) ), breaks=seq(min(minValue( d )),max(maxValue(d)),length.out=100) )
现在简单的解决方案是使用 zlim 选项。
plot( d, col=rev( rainbow( 99, start=0,end=1 ) ),zlim=c(0,1) )
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)