繁体   English   中英

在R中绘制堆积条形图

[英]plot stacked bar plot in R

我想在R中创建直方图[堆积条形图],数据如下:

Period = c(1,1,2,2,3,3,4,4)                              
Sample = c("A","B","A","B","A","B","A","B")
Value1 = c(3,2,6,7,3,2,1,2)
Value2 = c(1,0,5,2,2,0,2,5)
x <- data.frame(Period,Sample,Value1,Value2)

是否可以在X轴上设置“Period”和“Sample”,在“Stacked Bar Plot”中设置值(“Value1”和“Value2”)。 所以第一个直方图的高度为4(Value1和Value2分开)感谢您的帮助! 最好的祝福。

您正在描述堆积条形图,而不是直方图。 使用ggplot您可以按如下方式执行此操作:

library(ggplot2)
library(reshape2)

x <- data.frame(
  Period = c(1,1,2,2,3,3,4,4),
  Sample = c("A","B","A","B","A","B","A","B"),
  Value1 = c(3,2,6,7,3,2,1,2),
  Value2 = c(1,0,5,2,2,0,2,5)
)

mx <- melt(x, id.vars=1:2)
ggplot(mx, aes(x=Period, y=value, fill=variable)) + 
  geom_bar(stat="identity") + 
  facet_grid(~Sample)

在此输入图像描述

它不像ggplot解决方案那么漂亮但是

v <- rbind(Value1,Value2)
barplot(v,beside=FALSE,names=levels(interaction(Period,Sample)),legend=TRUE)

似乎工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM