我想在矩阵内部堆积条形图。我应该和ggplot一起去吗?
我的数据如下:
而且我想在每个矩阵中都有条形图。不是这样
ggplot(data = data1,
aes(x = Var1, y = Var2, fill = value)) +
geom_tile()
Stacked barplot for every matrix here
结果如下: 每个变量都将用作矩阵内的条形图 Result
答案 0 :(得分:1)
根据您的问题,确切了解您要执行的操作有些困难,但这是一个简单的脚本,可以帮助您入门。我猜想您要按变量划分矩阵吗?如果不是,请进行相应调整。
p<-ggplot(data = data, aes(x=Var1, y=Var2, fill=value)) + geom_bar()
p + facet_grid(. ~ variable)
答案 1 :(得分:1)
这是我的解决方案。我想这就是您想要的。
library(ggplot2)
# data
x <- data.frame(Var1=rep(c(rep("A",3), rep("B",2), "C"),3),
Var2=rep(c("A","B","C","B","C","C"),3),
variable=rep(c("part1","part2","part3"), each=6),
value=c(40.6,34.7,42.6,32.2,43.7,45.1,38.8,30.8,41.7,
29.4,40.4,42.2,20.6,34.5,15.7,38.4,15.9,12.7))
# plot
ggplot(x, aes(x=1,y=value, fill=variable))+
geom_bar(stat="identity", width=1, position="stack")+
facet_grid(Var1~Var2)+
# remove unwanted information
theme_classic()+
theme(axis.title=element_blank(),
axis.line=element_blank(),
axis.ticks=element_blank(),
axis.text=element_blank(),
plot.background = element_blank(),
plot.title=element_blank(),
strip.background = element_blank())