stat_density2d轮廓图传奇和点

时间:2016-01-12 21:32:17

标签: r ggplot2

我有以下等高线图(我无法重现完全相同的数据,所以我放置了下图)。

Contour Plot

使用的代码:

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]))

现在我想: - 删除与估计密度相关联的关卡图例级别。 - 删除低于估计密度的点,但保持&#39; z&#39;传说。 - 重命名&#39; z&#39;图例

上面怎么办?我是ggplot2的初学者,所以请耐心等待。 谢谢!

1 个答案:

答案 0 :(得分:3)

这有效:

  • 伪造一些数据
  • 然后使用shape=""来阻止显示点。
  • 关闭填充指南,压制标题为&#34; level&#34;
  • 的指南
  • 我应该可以使用guide_legend参数更改带有title的颜色图例的标题,但这搞砸了指南(可能是gplot2 2.0.0错误?)
  • 因此将z变量重命名为我想要的标题(My Title)并将其括在反引号中,以便让我自由选择任何标题。

产生这个:

# 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)

看起来像这样:

enter image description here