R 如何保持仅断开颜色,将零以上的值与零以下的值分隔开?

R 如何保持仅断开颜色,将零以上的值与零以下的值分隔开?,r,plot,raster,R,Plot,Raster,我想画一个矩阵,但没有中断的传奇色彩 library(colorRamps) library(raster) set.seed(1) library(raster) r <- raster(nrows=5, ncols=5) r <- setValues(r, 1:ncell(r)) plot(r, col = matlab.like(8) 库(颜色渐变) 图书馆(光栅) 种子(1

我想画一个矩阵,但没有中断的传奇色彩

       library(colorRamps) 
       library(raster) 
       set.seed(1)
       library(raster)
       r <- raster(nrows=5, ncols=5)
       r <- setValues(r, 1:ncell(r))
      plot(r, col =  matlab.like(8)
库(颜色渐变)
图书馆(光栅)
种子(1)
图书馆(光栅)

r听起来好像想要混合连续和离散尺度,例如,有一个离散尺度,嵌入两个连续尺度。我不知道在R中有什么方法可以做到这一点,但是只是将最后一行代码更改为

plot(r, col =  matlab.like(25)
创造了一些非常接近的东西:

使用
ggplot
,您可以更灵活地定义比例,但仍然不能将离散和连续结合起来

library(ggplot2)
library(colorRamps)

x    <- seq(-1,1,len=5)
y    <- seq(-1,1,len=5)
gg   <- expand.grid(x=x,y=-y)
gg$z <- seq(-1,1,len=25)
ggplot(gg) + 
  geom_raster(aes(x=x,y=y,fill=z))+
  scale_fill_gradientn(colours=matlab.like(25), breaks=c(-1,0,1))
库(ggplot2)
库(颜色渐变)

你能再具体一点吗?你想在离休息点更远的地方逐渐变暗蓝色和红色吗?像这样的?