2013-08-26 121 views
0

我需要根據子組所屬的組對箱線圖(子組)進行分組並重新排序它們(組)。我用使用ggplot2對箱線圖進行分組和重新排序

ř腳本是:

data<-read.delim("clipboard") 

p <- ggplot(data, aes(Class2,cM)) 

p <- p + geom_boxplot(aes(fill = factor(Class1))) + 
    geom_jitter(alpha = 0.4, position = position_jitter(height = .01, width = .35)) + 
    coord_flip() 

和我生成該(1類=基團;等級2 =亞組)。

grouping boxplots

請從here下載的數據表。如您所見,組織不在圖中組織。如果你能幫助我,我將不勝感激。由於某些子組沒有多個值,因此我們無法看到顏色來指示它們屬於哪個組。如果您可以添加標籤以顯示哪些子組位於哪個組中,那將會很棒。

謝謝!

+0

可能是更好的移動堆棧溢出? – SlowLearner

回答

0

請以文本格式提供數據,而不是xls。

解決方案1:轉換Class2中的因素,並設置水平所要求的順序

data$Class2 <- factor(
    data$Class2, 
    levels = c("group1:b", "group1:c", "group2:a") 
) 

解決方案2:使用facet_wrap代替填充

ggplot(data, aes(x= Class2, y = cM)) + geom_boxplot() + 
    geom_jitter(alpha = 0.4, position = position_jitter(height = .01, width = .35)) + 
    coord_flip() + 
    facet_wrap(~Class1) 
ggplot(data, aes(x= Class2, y = cM)) + geom_boxplot() + 
    geom_jitter(alpha = 0.4, position = position_jitter(height = .01, width = .35)) + 
    coord_flip() + 
    facet_wrap(~Class1, scales = "free_x") 
相關問題