使用直接标记更改轮廓颜色

时间:2014-04-30 12:03:50

标签: r ggplot2

我对ggplot2相当新,我试图创建一个缺少值的数据等高线图。由于缺少值,我不能自己绘制轮廓,所以我将瓷砖背景与轮廓相结合。问题是标签颜色与背景颜色相同。

假设我有这样的数据:

DF1 <- data.frame(x=rep(1:3,3),y=rep(1:3,each=3),z=c(1,2,3,2,3,4,3,NA,NA))

我可以制作这样的情节:

require(ggplot2); require(directlabels)
plotDF <- ggplot(DF1,aes(x,y,z=z)) + geom_tile(aes(fill=z)) + stat_contour(aes(x,y,z=z,colour= ..level..),colour="white")
direct.label(plotDF)

这给了我一个类似于我想要的图,但我希望能够将标签的颜色更改为黑色。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

我发现了一个similar post并认为这很容易,就像direct.label(p, list("last.points", colour = "black")一样。不幸的是,我无法使它发挥作用;我相信,这不是直接支持的。

然后我决定使用黑魔法,并设法通过手动覆盖色标来完成这个技巧:

direct.label(plotDF + 
             scale_colour_gradient(low="black", high="black"))

enter image description here