【发布时间】:2013-01-13 20:44:28
【问题描述】:
我有一些聚合数据想使用 ggplot2 进行可视化,我现在正在寻找一种智能快捷方式来绘制聚合数据?
我的数据是这样的,(我目前只有df2这样的数据)
df <- data.frame(cyl = mtcars[,2])
(df2 <- t(table(df$cyl)))
4 6 8
[1,] 11 7 14
我有兴趣创建这样的情节,(见下文code 用于创建此情节)
require(ggplot2)
df <- data.frame(cyl = mtcars[,2])
df$cyl2 <- ifelse(df$cyl > 4, c('Treatment'), c('Control'))
# hline.data <- data.frame(cyl2 = c('Treatment', 'Control'), cyl = c(10, 2))
c <- ggplot(df, aes(factor(cyl)))
c + geom_bar(fill="white", colour="darkgreen", alpha=0.5) + facet_grid(. ~ cyl2, scales = "free", space = "free") + theme(axis.title.x = element_blank(), axis.title.y = element_blank(), axis.ticks.x = element_blank(), legend.position = "none") + scale_y_continuous(breaks=c(4, 6, 8), labels=c("Minimal","Mild", "Moderate")) + scale_x_discrete(breaks=c(6,8,4), labels=c("Treat 1", "Treat 2", "Control"))
对于做到这一点的人的奖励问题。是否可以使scale_y_continuous 中的breaks= 在两个方面有所不同?或者添加geom_hline 并在边距中添加一些文本会是更好的策略吗?添加边距似乎很棘手,我将不得不覆盖剪裁like this或this?
【问题讨论】:
-
我不确定我是否理解您的主要问题:您还想对已有的情节做什么?
-
@Marius,感谢您指出模糊之处。我的主要问题是这是否是一种基于聚合数据进行绘图的方法。我只有
df2中显示的汇总数据。
标签: r ggplot2 visualization aggregate