2014-11-06 65 views
-1

如何使用兩個變量創建x軸?我想在兩個預測變量的所有可能組合中顯示y軸上的值。ggplot2:fill&position ='dodge'for geom_line

對於geom_bar,你需要做的就是使用fill和position ='dodge'美學。這似乎不適用於geom_line。我可以手動創建交互術語並重構我的數據框,但必須有辦法更快地完成此操作。

這似乎是一個相當簡單的問題,但我似乎無法在任何地方找到答案!

謝謝。

編輯:對不起,更多信息 - 我想,看起來像這樣的圖表: enter image description here

這是想我的圖形看起來像一個代表。我已經編制了數據並將其繪製在Excel中。您可以看到x軸是如何由兩個變量共享的,一個嵌套在另一箇中。這兩個變量都是數字,每個都有兩個級別。

我寧願避免手動創建交互術語,因爲它看起來更像是一種粗糙的方式。 Ggplot非常靈活,我猜想我腦海中會有可能。

+1

*「兩個變量創建x軸的所有可能組合......」是什麼意思?使用'str()'或'dput()'顯示一段樣本數據。你的變量是分類的,邏輯的,整數,字符串,數字......?我們不是mindreaders你知道... – smci 2014-11-06 21:28:36

+0

*「我可以手動創建一個交互術語和重構我的數據框」* ...和/或使用as.factor()。這可能是最好的解決方案,我沒有看到這是一個大問題,向我們展示您的代碼並告訴我們您不喜歡它。 – smci 2014-11-06 21:30:54

+1

至於「fill&position ='dodge'for geom_line」,沒有任何...你想實現什麼? **發佈類似圖形的圖片。** [geom_area或geom_ribbon](http://docs.ggplot2.org/current/)?系列間有不連續間隙的線圖?或者是什麼? – smci 2014-11-06 21:36:15

回答

0

直到您詢問您的數據的詳細信息,一般的回答是:

1)爲x軸,就像你已經說了:

interaction(as.factor(df$var1), as.factor(df$var2), drop = TRUE) 

我看不出有什麼不良有關,它是一個單線程,你甚至可以通過ggplot()來調用它。有什麼問題? 您可能只想操縱每個人的訂單factor(levels = ...),或重新排序交互的輸出?

2)你似乎也在問一個情節類型,或幾何。但沒有任何細節。 至於「填寫& position ='dodge'for geom_line」,沒有任何...你想達到什麼目的?發佈類似圖形的圖片。 geom_area or geom_ribbon?系列間有不連續間隙的線圖?或者是什麼?