我有以下等高线图(我无法重现完全相同的数据,所以我把图放在下面)。
使用的代码:
contPlot <- (ggplot(data=gg, aes(x=wf, y=wb, z=z)) + geom_point(aes(colour=z))
+ stat_density2d(aes(fill = ..level..),n = 100,contour = TRUE,geom = "polygon"))
contPlot + labs(x=expression(w[f]),y=expression(w[b]))
现在我想: - 删除与估计密度相关的级别图例级别。 -删除低于估计密度的点,但保留“z”图例。 -重命名“z”图例。
如何做到以上几点?我是 ggplot2 的初学者,所以请多多包涵。 谢谢!
最佳答案
这个有效:
- 伪造了一些数据
- 然后使用
shape=""
来阻止显示点。 - 关闭填充指南,取消标题为“level”的指南
- 我应该可以用
guide_legend
和title
参数更改颜色图例的标题,但这搞砸了指南(可能是gplot2 2.0 .0
错误?) - 因此将
z
变量重命名为我想要的标题(我的标题
)并将其括在反引号中,以便我可以自由选择任何标题。
产生这个:
# fake data
set.seed(1234)
n <- 200
gg <- data.frame(wf=rnorm(n,0.5),wb=rnorm(n,0.5),z=runif(n,0,6))
# plot it
gg$`My Title` <- gg$z
ggplot(data=gg, aes(x=wf, y=wb, color=`My Title`)) +
geom_point(aes(colour=z),shape="") +
stat_density2d(aes(fill = ..level..),n = 100,contour = TRUE,geom = "polygon") +
labs(x=expression(w[f]),y=expression(w[b])) +
guides(fill=F)
看起来像这样:
关于r - stat_density2d 等高线图图例和点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34754162/