我有两个图表,我试图将一个覆盖在另一个之上:
数据框“ge”的示例如下所示。实际上有 10 个基因,每个基因有 200 个样本,所以有 2000 行和 3 列:
Exp Gene Sample
903.0 1 1
1060.0 1 2
786.0 1 3
736.0 1 4
649.0 2 1
657.0 2 2
733.5 2 3
774.0 2 4
数据框“avg”的示例如下所示。这是所有样本中每个基因的数据点的平均值。实际上这个图有 10 个基因,所以矩阵是 4col X 10 行:
mean Gene sd se
684.2034 1 102.7142 7.191435
723.2892 2 100.6102 7.044122
第一张图绘制了每个基因的平均表达线以及每个数据点的标准偏差。
avggraph <- ggplot(avg, aes(x=Gene, y=mean)) + geom_point() +geom_line() + geom_errorbar(aes(ymin=mean-sd, ymax=mean+sd), width=.1)
第二张图以线的形式绘制了所有基因中每个样本的基因表达。
linegraphs <- ggplot(ge, aes(x=Gene, y=Expression, group=Samples, colour="#000099")) + geom_line() + scale_x_discrete(limits=flevels.tge)
我想将 avggraph 叠加在linegraphs之上。有没有办法做到这一点?我已经尝试过 avggraph + linegraphs 但我遇到了一个错误。我认为这是因为这些图表是由两个不同的数据框生成的。
我还应该指出,两个图表的轴是相同的。两张图的 X 轴为基因,Y 轴为基因表达。
任何帮助将不胜感激!