2011-10-02 49 views
4

我有一個實驗,隨着時間的推移研究了三個不斷髮展的酵母種羣。在離散的時間點,我們測量了他們的增長,這是響應變量。我基本上想要將酵母的增長作爲一個時間序列來繪製,使用箱形圖來總結每個點的測量結果,並且分別繪製三個種羣的每一個。基本上,一些看起來像這樣(作爲一個新手,我沒有得到張貼實際圖像,所以X,Y,Z參考的三個地重複):使用ggplot2的組的時間序列圖

|    xyz 
|  x z xyz 
| y xyz 
| xyz y 
| x z  
| 
----------------------- 
    t0  t1 t2 

怎麼可以這樣使用GGPLOT2做?我有一種感覺,必須有一個簡單而優雅的解決方案,但我找不到它。

+1

請通過發佈'dput(yourDataHere)'的結果來添加一些示例數據。其他偉大的技巧發現在這裏:http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example – Chase

回答

5

試試這個代碼:

require(ggplot2) 

df <- data.frame(
    time = rep(seq(Sys.Date(), len = 3, by = "1 day"), 10), 
    y = rep(1:3, 10, each = 3) + rnorm(30), 
    group = rep(c("x", "y", "z"), 10, each = 3) 
) 
df$time <- factor(format(df$time, format = "%Y-%m-%d")) 

p <- ggplot(df, aes(x = time, y = y, fill = group)) + geom_boxplot() 
print(p) 

Fig1

只有x = factor(time)ggplot(df, aes(x = factor(time), y = y, fill = group)) + geom_boxplot() + scale_x_date(),不能正常工作。

預處理,factor(format(df$time, format = "%Y-%m-%d")),是這種形式的圖形所必需的。

+0

這工程!只需確保大多數應用程序的[正確排序]因素(http://www.cookbook-r.com/Manipulating_data/Changing_the_order_of_levels_of_a_factor/) – SlowLearner

相關問題