【发布时间】:2018-01-24 14:20:29
【问题描述】:
我有两组数据,我想使用带有 viridis 色标的热图来呈现它们。对于第一个数据集,我的值范围从 0 到 1.2,我可以很容易地看到我想看到的差异。但是我的第二个数据集有一些异常值,导致范围从 0 到 2。现在更难看到 0 和 1 之间有趣范围内的差异,直接比较这两个图像更加困难。是否有可能使用 viridis 色阶显示从 0 到 1.2 的数据,同时以黄色显示更高的值(viridis 色阶的“最高”颜色)? 这是一个例子:
library(viridis)
#Create Data
DataSet1 <- expand.grid(x = 0:5, y = 0:5)
DataSet1$z <- runif(36, 0, 1.2)
DataSet2 <- expand.grid(x = 0:5, y = 0:5)
DataSet2$z <- runif(36, 0, 2)
#Plot Data
ggplot(DataSet1, aes(x, y, fill = z)) +
geom_tile() +
scale_fill_viridis() +
geom_text(aes(label = round(z, 2)), size = 2)
DataSet1:0.5 和 0.7 的区别很容易看出
ggplot(DataSet2, aes(x, y, fill = z)) +
geom_tile() +
scale_fill_viridis() +
geom_text(aes(label = round(z, 2)), size = 2)
DataSet2:0.5 和 0.7 之间的差异很难看出
【问题讨论】:
-
在
ggplot2::scale_fill_gradient中设置限制怎么样?