为绘制栅格创建新的调色板
Creating new color palette for plotting raster
我有一个光栅图像,我尝试使用 BuRdTheme 中的 rasterVis
包进行绘制。但是我觉得颜色暗淡。
然而,我需要的是像下面这样的东西。如何在 raster
或 rasterVis
中创建所需的调色板,或者是否有任何其他合适的软件包?
我尝试使用 rasterTheme
创建新调色板
rainbTheme5 <- rasterTheme(region = rev(rainbow(n = 5)))
levelplot(r,par.settings=rainbTheme5)
我得到的是
图像的直方图看起来像
你有一些像素下降了大约 305(我猜是蓝色)所以你的大部分像素都超过了 320,所以都在调色板的 brown/red 端。
您可能需要一个调色板,该调色板会随着数据的峰值而变化。您可以通过创建一个调色板来做到这一点,该调色板以一组低值颜色开始。例如:
> rep(rev(rainbow(n=5)),c(5,1,1,1,1))
[1] "#CC00FFFF" "#CC00FFFF" "#CC00FFFF" "#CC00FFFF" "#CC00FFFF" "#0066FFFF"
[7] "#00FF66FF" "#CCFF00FF" "#FF0000FF"
有9种颜色,前五种颜色相同。在这种情况下,5/9 的数据范围将全部是该颜色,并且数据集的最高 4/9 将被整个数据范围着色。由于您的峰值跨度约为该数量,您将获得您想要的效果。调整调色板以适应。
请注意,您应该始终询问任何图形试图回答的问题,并调整 colours/scales 等以帮助回答该问题,而不是试图让它看起来不像 "dull",除非这是画廊的墙壁。
我终于找到了我要找的东西:
myTheme <- rasterTheme(region = rep(rev(rev(colorRamps::matlab.like(n=12))),c(1,1,1,1,1,1,1,1,1,1,1,1)))
使用 levelplot
并使用 levelplot
和 自定义主题
我有一个光栅图像,我尝试使用 BuRdTheme 中的 rasterVis
包进行绘制。但是我觉得颜色暗淡。
然而,我需要的是像下面这样的东西。如何在 raster
或 rasterVis
中创建所需的调色板,或者是否有任何其他合适的软件包?
我尝试使用 rasterTheme
rainbTheme5 <- rasterTheme(region = rev(rainbow(n = 5)))
levelplot(r,par.settings=rainbTheme5)
我得到的是
图像的直方图看起来像
你有一些像素下降了大约 305(我猜是蓝色)所以你的大部分像素都超过了 320,所以都在调色板的 brown/red 端。
您可能需要一个调色板,该调色板会随着数据的峰值而变化。您可以通过创建一个调色板来做到这一点,该调色板以一组低值颜色开始。例如:
> rep(rev(rainbow(n=5)),c(5,1,1,1,1))
[1] "#CC00FFFF" "#CC00FFFF" "#CC00FFFF" "#CC00FFFF" "#CC00FFFF" "#0066FFFF"
[7] "#00FF66FF" "#CCFF00FF" "#FF0000FF"
有9种颜色,前五种颜色相同。在这种情况下,5/9 的数据范围将全部是该颜色,并且数据集的最高 4/9 将被整个数据范围着色。由于您的峰值跨度约为该数量,您将获得您想要的效果。调整调色板以适应。
请注意,您应该始终询问任何图形试图回答的问题,并调整 colours/scales 等以帮助回答该问题,而不是试图让它看起来不像 "dull",除非这是画廊的墙壁。
我终于找到了我要找的东西:
myTheme <- rasterTheme(region = rep(rev(rev(colorRamps::matlab.like(n=12))),c(1,1,1,1,1,1,1,1,1,1,1,1)))
使用 levelplot
并使用 levelplot
和 自定义主题