我对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)
这给了我一个类似于我想要的图,但我希望能够将标签的颜色更改为黑色。有什么想法吗?
答案 0 :(得分:1)
我发现了一个similar post并认为这很容易,就像direct.label(p, list("last.points", colour = "black")
一样。不幸的是,我无法使它发挥作用;我相信,这不是直接支持的。
然后我决定使用黑魔法,并设法通过手动覆盖色标来完成这个技巧:
direct.label(plotDF +
scale_colour_gradient(low="black", high="black"))