2016-08-17 25 views
0

這是this,thisthis問題的後續處理。每個面板中的底層相同直方圖

目前,我有一個十二面板晶格,其中相同的暗直方圖的輪廓疊加在十二個不同的純灰色直方圖:

Twelve panels with two histograms in each, one as an outline over the other

這可以很容易地在每個面板的新數據進行比較與其他數據相同。離開了一些細節無關的這個問題,我的代碼如下所示:

histogram(~ foo | bar, 
      data=mydata[mydata$bar!="none",], # get only the 12 categories 
      col=mylightgray, border=mylightgray, 
      panel=function(...){panel.histogram(...) # add histogram to ea. panel: 
           panel.histogram(x=mydata[mydata$bar=="none",]$foo, 
            col="transparent", border="black")}) 

現在我想扭轉的顏色,可以這麼說:我想在同一個純灰色疊加不同的輪廓直方圖直方圖。

這裏的問題:

如果我只是換了顏色,使主直方圖具有col="transparent"border="black",而面板功能直方圖使用mylightgray,灰色的直方圖將在最前面,並會掩蓋的部位大綱直方圖,它擊敗了將兩個直方圖放在一個面板中的目的。另一方面,如果我交換數據規範,以便外部主要直方圖使用bar=="none",並且面板直方圖使用bar!="none",我只獲得一個面板。

問題是,它是主要的直方圖調用,而不是額外的面板功能,它們都是先寫入的,並且還控制面板的數量。看起來不可能創建多個面板,其中底部上的圖是是相同的 - 除非我只是創建了具有相同數據的十二個副本的數據幀。我想知道是否有沒有生成特殊數據的解決方案。

+2

請在問題本身中包含一個最小[可重現的示例](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)。如果我們必須在其他問題中追蹤部分信息,它會更難以幫助您。也可能包括圖片/素描,所以我們確切地知道你想要什麼 – MrFlick

+0

你可能會發現這個感興趣的帖子:https://drsimonj.svbtle.com/plotting-background-data-for-groups-with-ggplot2 –

+0

@MrFlick,會做。我認爲在這種情況下可能沒有必要。 – Mars

回答

0

交換顏色調用panel.histograms的順序。也就是說,首先繪製灰色直方圖。

相關問題