Barplot with ggplot:如何使用不同列的信息

时间:2018-04-09 17:11:05

标签: r ggplot2

我有一个(生物)基因丰度数据框架和它们所代表的代谢过程。

> head(as.data.frame(df))
  Total_abundance                     process1 process10 process11 process12 process13
1        53132920 Glycolysis / Gluconeogenesis         0         0         0         0
2        35708645        Pyrimidine metabolism         0         0         0         0
3        33620967        Arginine biosynthesis         0         0         0         0
4        26119946       Fatty acid degradation         0         0         0         0
5        26119946       Fatty acid degradation         0         0         0         0
6        20600274       Fatty acid degradation         0         0         0         0
                                     process2                        process3           process4              process5
1                         Pyruvate metabolism           Propanoate metabolism Metabolic pathways     Carbon metabolism
2                   Selenocompound metabolism                               0                  0                     0
3 Alanine, aspartate and glutamate metabolism             Nitrogen metabolism Metabolic pathways                     0
4                        Butanoate metabolism              Metabolic pathways  Carbon metabolism Fatty acid metabolism
5                        Butanoate metabolism              Metabolic pathways  Carbon metabolism Fatty acid metabolism
6  Valine, leucine and isoleucine degradation alpha-Linolenic acid metabolism Metabolic pathways Fatty acid metabolism
  process6 process7 process8 process9
1        0        0        0        0
2        0        0        0        0
3        0        0        0        0
4        0        0        0        0
5        0        0        0        0
6        0        0        0        0

在我获得的数据框架中,遗憾的是,一些基因有助于多个代谢过程(如果它们只对一个过程有贡献,则其他列processX具有数字0)。

目前,我只绘制第一列,但我也希望整合其他流程。这就是我目前正在绘制数据的方式:

df %>%
  ggplot(aes(x = process1, y = Total_abundance, fill = process1)) +
  geom_bar(stat = "identity")

但这仅适用于process1,我忽略了所有其他列。如何集成其他列(它们不是0)?我想重塑数据框,但我不知道如何做到这一点。

谢谢。 : - )

0 个答案:

没有答案