4

我想根据数据框不同列的值在一个图中将 3 个条形图一起绘制。

它应该看起来像这样

图 1 的 y 值是图 2 和图 3 的 y 值之和。图 1 和图 2 的颜色可以完全填充(例如蓝色和红色),但图 3 的颜色必须是半透明的。

我能够使用该barplot()函数分别为每一列绘制一个图,但我无法将它们组合在一个图中。

barplot(covpatient[[1]]$cov, names.arg = covpatient[[1]]$exon, xlab = covpatient[[1]]$gene[1] , ylab = "read depth" , border = "blue", col = "blue")
barplot(covpatient[[1]]$plus, names.arg = covpatient[[1]]$exon, xlab = covpatient[[1]]$gene[1] , ylab = "read depth" , border = "red", col = "red")
barplot(covpatient[[1]]$min, names.arg = covpatient[[1]]$exon, xlab = covpatient[[1]]$gene[1] , ylab = "read depth" , border = "gray", col = "gray")

有人可以帮我一把吗?

4

1 回答 1

0

我不确定这是否是您想要的……但根据您发送的图片,我认为这会有所帮助:

require(ggplot2)
require(reshape2)

covpatient <-list()
covpatient$cov <-rnorm(100,2)
covpatient$plus <-rnorm(100,4)
covpatient$min <-rnorm(100,1)

plot_covpatient <- do.call(rbind,covpatient) 

melted_plot_covpatient<-melt(plot_covpatient,value.name = 'Value')

ggplot(melted_plot_covpatient,aes(group=Var1))+
  geom_density(aes(Value,colour=Var1,fill=Var1),alpha=.5)
于 2014-10-31T01:42:23.000 回答