簡體   English   中英

柵格顏色-正紅色和負藍色

[英]Raster color - positive red & negative blue

我在R中創建了具有正值和負值的空間柵格。 我希望所有正值都為紅色,而所有負值都為藍色。 基本上,我想定義自己的顏色漸變,其中零為空白,紅色為正值,藍色為負值(這些可以是任何顏色)。 R中的大多數色帶在最小值之間散布所有可用的顏色。 和最大 值。

我似乎無法找到解決方案,因此希望這里有人提出建議。

這是一個值在-5到5之間的柵格的示例,為此我需要一個“新” col定義:

library(raster)
set.seed(9)
r <- raster(ncol=10, nrow=10)
r1 <- setValues(r, (1:ncell(r))/10 + rnorm(ncell(r)) - 5)
plot(r1, col= topo.colors(12))

最好-尼爾斯

除了增加公差外,我找不到其他更優雅的方法,因為如果要獲得更優雅的方法,則應該為段指定顏色而不是單個點(例如0),請繼續

library(raster)
set.seed(9)
r <- raster(ncol=10, nrow=10)
r1 <- setValues(r, (1:ncell(r))/10 + rnorm(ncell(r)) - 5)
tol=10^-12
breakpoints <- c(min(as.data.frame(r1)),0-tol,0+tol,max(as.data.frame(r1)))
colors <- c("blue","white","red")
r1.range <- c(minValue(r1), maxValue(r1))
plot(r1,breaks=breakpoints,col=colors,     axis.args=list(at=c(r1.range[1], 0,r1.range[2])))

只需要使用axis.args參數才能使圖例看起來不錯,如果對您來說嚇人,則可以將其axis.args

這個

資源:

https://gis.stackexchange.com/questions/17339/raster-legend-in-r-how-to-colour-specific-values

應該可以解決您的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM