从这个数据
library(ggplot2)
library(reshape2)
test <- structure(list(Name = structure(c(3L, 1L, 2L), .Label = c("Bob",
"Marc", "Tim"), class = "factor"), Group = structure(1:3, .Label = c("A",
"B", "C"), class = "factor"), X2012 = 11:13, X2013 = c(14L, 15L,
15L), X2014 = c(12L, 14L, 13L)), .Names = c("Name", "Group",
"X2012", "X2013", "X2014"), class = "data.frame", row.names = c(NA,
-3L))
test.melt <- melt(test)
names(test.melt) <- c("Name", "Group", "Year", "Mean")
我想创建一个条形图,它将“Name”列中的三个因子级别作为主x轴变量。三个级别(Bob,Marc,Tim)中的每一个都应该有三个躲避栏(“年”级别),并且应该用“组”着色。在y轴上绘制的应该是“平均值”中给出的值。 我试过了
ggplot(test.melt, aes(x=Name, y=value, fill=Group)) +
geom_bar(stat="identity", position="dodge")
但我不知道怎么告诉ggplot2要躲闪什么,即怎么处理“年”。有解决方案吗?
答案 0 :(得分:0)
您必须在某处使用Year作为组类别。在这里,我使用了颜色,但它也适用于形状,但对于后者,你不会看到哪个条形对应于哪一年。
ggplot(test.melt, aes(x=Name, y=Mean, fill=Group, color=Year)) +
geom_bar(stat="identity", position="dodge")