我有一些像这样的数据:
site <- c('twitter', 'facebook', 'gplus')
bouncerate <- c(35, 29, 17)
conversionrate <- c(20, 30, 32)
users <- c(350, 800, 42)
df <- data.frame(site, bouncerate, conversionrate, users) %>% melt()
我这样绘制它:
ggplot(subset(df, variable!='users'), aes(x=site, y=value)) + 
  geom_bar(stat="identity", aes(fill=variable), position="dodge") +
  coord_flip() +
  scale_fill_brewer(palette = "Set1”)
如您所见,我正在尝试绘制“比率”变量。但是我也想将“ users”变量的值放在条形图的右侧。看起来像这样:
所以我的问题是,我该如何获得那些用户数?我以为geom_label可以做到这一点,但我看不到如何将标签的坐标绑定到群集。
而且,虽然上面的示例没有显示它,但是如果用户数最多的集群位于顶部,而其余的则从顶部降落,我会感到很高兴。
这是使用geom_text的方法:
ggplot(subset(df, variable!='users'), aes(x=site, y=value)) + 
  geom_bar(stat="identity", aes(fill=variable), position="dodge") +
  coord_flip() +
  scale_fill_brewer(palette = "Set1") +
  geom_text(data=subset(df, variable=="users"), 
aes(x=site, y=40, 
label=paste("(", value ,"\n", variable, ")", sep = "")))
| 归档时间: | 
 | 
| 查看次数: | 331 次 | 
| 最近记录: |