2016-03-18 27 views
-1

我想繪製下表的圖。繪製比較每一行的情節?

     T6  T26 D6  D26 
ENSMUSG00000026427 420  170 197 249 
ENSMUSG00000026436  27  21 54  77 
ENSMUSG00000018189 513 246 429 484 
ENSMUSG00000026470 100  55 82  73 
ENSMUSG00000026696 147  73 182 283 
ENSMUSG00000026568 3620 1571 1264 1746 
ENSMUSG00000026504  95  60 569 428 

我想比較每一行,並用不同的顏色指定每一列。 X.lab =基因名稱 y.Lab =計數

+1

你嘗試過什麼嗎?此網站設置爲回答具體問題。編輯您的問題以顯示您嘗試過的代碼,並描述您在哪裏遇到問題。我們不是爲了給你寫代碼。 – MrFlick

回答

1

我認爲適當的繪圖選擇取決於您的完整數據集的特徵以及我可以告訴的ID的可能唯一值的數量( 「ENSMUSG *」)和可能的變量數(「T26」,「D26」,...)。但是,清楚的是,變量具有不同的尺度,所以不應該在同一個圖上進行組合,所以我在下面選擇了一個多面網格圖。

下面是一些代碼,使得基於您選擇向我們展示的數據樣本的合適的選擇:

library(readr) 
library(dplyr) 
library(tidyr) 

df_foo = read.table(textConnection(
    "T6  T26 D6  D26 
ENSMUSG00000026427 420  170 197 249 
ENSMUSG00000026436  27  21 54  77 
ENSMUSG00000018189 513 246 429 484 
ENSMUSG00000026470 100  55 82  73 
ENSMUSG00000026696 147  73 182 283 
ENSMUSG00000026568 3620 1571 1264 1746 
ENSMUSG00000026504  95  60 569 428" 
)) 

# plot the data 
df_foo %>% 
    add_rownames(var = "ID") %>% 
    gather(key = Variable, value = Value, -ID) %>% 
    ggplot(aes(x = ID, y = Value, fill = Variable)) + 
    geom_bar(stat = "identity") + 
    theme_bw() + 
    facet_wrap(~ Variable, scales = "free_y") + 
    theme(axis.text.x = element_text(angle = 50, hjust = 1)) 

# save the plot 
ggsave("results/faceted_bar.png", dpi = 600) 

注意的是,製造color以上的審美嚴格,不需要因爲我們是無論如何由Variable。這裏是上面的代碼會產生什麼:

enter image description here

它可以很容易地認爲,這不是給你的數據的詳細背景和知識,您的數據相應的圖表。您應該像其他人評論的那樣,在該問題中添加更多細節。