R 连续比例填充和分类填充一起使用
我有一个如下所示的数据帧:R 连续比例填充和分类填充一起使用,r,ggplot2,R,Ggplot2,我有一个如下所示的数据帧: >View(gaps) ID | MONTH | MEAN | CATEGORY 1 | 2012-01-01 | 20 | No Gap 1 | 2012-02-01 | 30 | No Gap 1 | 2012-03-01 | 5 | Gap 2 | 2012-01-01 | 55 | No Gap 2 | 2012-02-01 | 50 |
>View(gaps)
ID | MONTH | MEAN | CATEGORY
1 | 2012-01-01 | 20 | No Gap
1 | 2012-02-01 | 30 | No Gap
1 | 2012-03-01 | 5 | Gap
2 | 2012-01-01 | 55 | No Gap
2 | 2012-02-01 | 50 | No Gap
2 | 2012-03-01 | 55 | No Gap
>p <- ggplot(gaps, aes(x=MONTH, y=ID, fill = MEAN))
>p <- p + geom_tile()
>p <- p + scale_fill_gradient(low="firebrick3", high="darkolivegreen2", space="Lab")
>p
我想用平均值绘制一个连续缩放的热图,但我想在类别值为“间隙”的地方覆盖此填充,使瓷砖简单、不变、单色红色
设置如下所示:
>View(gaps)
ID | MONTH | MEAN | CATEGORY
1 | 2012-01-01 | 20 | No Gap
1 | 2012-02-01 | 30 | No Gap
1 | 2012-03-01 | 5 | Gap
2 | 2012-01-01 | 55 | No Gap
2 | 2012-02-01 | 50 | No Gap
2 | 2012-03-01 | 55 | No Gap
>p <- ggplot(gaps, aes(x=MONTH, y=ID, fill = MEAN))
>p <- p + geom_tile()
>p <- p + scale_fill_gradient(low="firebrick3", high="darkolivegreen2", space="Lab")
>p
>p
是否有方法覆盖“间隙”实例的填充?谢谢。如果您没有任何真正的
NA
值需要担心,您可以将相应的平均值设置为NA
,然后在比例填充梯度中指定NA.value
:
ggplot(gaps, aes(x=MONTH, y=ID, fill = ifelse(CATEGORY=="Gap", NA, MEAN))) +
geom_tile() +
scale_fill_gradient(low="firebrick3", high="darkolivegreen2",
space="Lab", na.value="red")