簡體   English   中英

2因子直方圖分析

[英]2 factor histogram analysis

我已經找了很長時間來回答這個問題,但我找不到答案。

問題在於:我有一個包含以下變量的數據框 :流速1(CH_SONAR),流速2(CH_SONAR_2T),密度(CH_DENSITY)以及兩種流速(per_diff)之間的百分比差異。 我為流速1創建了一個5級因子,為密度創建了另一個5級因子。

f.factor <- cut(p.pipeline$CH_SONAR_2T, 5, labels = c('Very Low','Low', 'Medium', 'High', 'Very High'))

d.factor <- cut(p.pipeline$CH_DENSITY, 5, labels = c('Water', 'Very Sparce', 'Sparce', 'Dense', 'Very Dense'))

我使用每個因子作為填充變量使用ggplot2繪制了兩個:

qplot(per_diff, data = p.pipeline, geom = "histogram", binwidth = 1, xlim = c(-5, 15), fill = f.factor)

qplot(per_diff, data = p.pipeline, geom = "histogram", binwidth = 1, xlim = c(-5, 15), fill = d.factor)

現在我想用ggplot創建一個直方圖,讓我看到流速和密度之間的關系(水和非常低,非常低,低,Sparce和低等,對於所有25種可能的組合)。 我已經嘗試創建新的因素,將d.factor和f.factor綁定到數據框,將兩個因素綁定在一起等等沒有結果,你們有任何想法如何解決這個問題嗎?

我已經嘗試過包括我制作的直方圖,但我認為我沒有足夠的聲譽去做。

感謝你的幫助!

您可以使用fill=interaction(f.factor, d.factor) 未出現在圖例中的組合,例如“Low.Very Sparce”表示沒有屬於這兩個類別的觀察。

在此輸入圖像描述

如果你想讓相鄰級別的顏色更突出,你可以做的一件事就是用rainbow生成顏色,然后在輪子上用相反的顏色交換每一種顏色。

col <- rainbow(length(levels(interaction(f.factor, d.factor))), v=.75, s=.5)
col.index <- ifelse(seq(col) %% 2, 
                    seq(col), 
                    (seq(ceiling(length(col)/2), length.out=length(col)) %% length(col)) + 1)
mixed <- col[col.index]
qplot(per_diff, data = p.pipeline, 
      geom = "histogram", binwidth = 1, xlim = c(-5, 15), 
      fill = interaction(f.factor, d.factor)) + scale_fill_manual(values=mixed)

在此輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM