【发布时间】:2014-01-01 12:07:48
【问题描述】:
编辑:此问题已被标记为重复,但已尝试回复 here 并没有工作,因为所讨论的案例是折线图,而不是条形图。应用这些方法会生成一个包含 5 条线的图表,每年 1 条线 - 没用。投票标记为重复的人是否真的在这个问题提供的样本数据集上尝试了这些方法?如果是这样,请发布作为答案。
原问题:
Excel 数据透视图中有一个功能允许多级分类轴。我正在尝试找到一种方法来使用ggplot(或 R 中的任何其他绘图包)做同样的事情。
考虑以下数据集:
set.seed(1)
df=data.frame(year=rep(2009:2013,each=4),
quarter=rep(c("Q1","Q2","Q3","Q4"),5),
sales=40:59+rnorm(20,sd=5))
如果将其导入 Excel 数据透视表,则可以直接创建以下图表:
注意 x 轴有两个级别,一个代表季度,一个代表分组变量年。 ggplot 可以实现多级轴吗?
注意:有一个带有 facets 的 hack 会产生类似的东西,但这不是我想要的。
library(ggplot2)
ggplot(df) +
geom_line(aes(x=quarter,y=sales,group=year))+
facet_grid(.~year,scales="free")
【问题讨论】: