0
我想使用包viridis
或RColorBrewer
的包裝中的調色板繪製一個圖表,但我想設置變量分佈中的哪個點應該被視爲中間點顏色漸變。在viridis或RColorBrewer中設置顏色範圍的參考值
例如,在下面的圖中,R取0.5作爲顏色範圍的中點。我如何設置不同的值,例如0.25?
library(ggplot2)
library(RColorBrewer)
# data
set.seed(1)
df <- expand.grid(x = 0:5, y = 0:5)
df$z <- runif(nrow(df))
# plot
ggplot(df, aes(x, y, fill = z)) + geom_raster() +
scale_fill_distiller(palette="RdBu", guide = "colorbar")
# plot using viridis
library(viridis)
ggplot(df, aes(x, y, fill = z)) + geom_raster() +
scale_fill_viridis()
編輯:我一直在尋找與此類似這裏的解決方案,因爲我的變量的分佈是不對稱的。但是,我想保持從深藍到深紅的整個顏色範圍,這似乎是不可能的。
ggplot(df, aes(x, y, fill = z)) + geom_raster() +
scale_fill_gradient2(low = "#2166ac", mid = "#f7f7f7", high = "#b2182b", midpoint = 0.2,
space = "Lab", na.value = "grey50", guide = "colourbar")
@Henrik我編輯了更多信息的問題。 –