[英]How do I plot multiple columns on the X-axis in R?
我從一組100種最常見於某種生物物質中的基因開始,此列表稱為“ top100”。 使用MERGE,我設法從每個樣本的數據集中獲取了這100種蛋白質中每種蛋白質的計數。 我想繪制每個樣品中每種蛋白質的計數。
因此,基本上,我想要一個顯示例如蛋白質:PKM的圖,而不是每個樣品的圖(在這種情況下為N = 2),而不是在單個圖中對所有100種蛋白質重復此過程。
row.names Gene.Symbol Normalised.count.(B) Normalised.count.(A)
1 1 A2M 46.073855 280.736354
2 5 ACTN4 0.000000 10.436296
3 8 ALDOA 39.354751 61.574145
4 9 ANXA1 1.919744 1.043630
5 13 ANXA5 8.638848 0.000000
6 17 BSG 5.759232 1.043630
7 22 CD81 1.919744 2.087259
8 23 CD9 2.879616 4.174518
9 25 CFL1 5.759232 10.436296
10 26 CLIC1 1.919744 10.436296
這是總數的1/10,因此對於每個基因符號,我都希望繪制兩個經過規范化的計數值,其中
X1 =基因符號y =標准化計數(A)
X2 =基因符號y =標准化計數(B)
到目前為止,這是我整理到最終列表中的內容。
library("openxlsx")
library("dplyr")
library("ggplot2")
library('reshape2')
library('gdata')
protein_report <- read.xlsx(file.choose(), sheet=1)
top100 <- read.xlsx(file.choose(), sheet=1)
norm <- matchcols(protein_report,with = "Norm")
top <- na.omit(merge(top100, protein_report[c("Gene.names",norm)], by.x="Gene.Symbol",by.y="Gene.names", all.x = T, all.y = F))
如何繪制這些值?
您可以使用tidyr和collect函數首先將數據重塑為長格式,然后使用ggplot對其進行繪制
library(tidyr)
library(ggplot2)
plotData <- protein_report %>% gather(type,Normalised.count,
Normalised.count.A,Normalised.count.B)
ggplot(plotData,aes(x=Gene.Symbol,y=Normalised.count,color=type) +
geom_line() ## For a line plot
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.