2010-07-21 35 views
0

我想,看起來類似於lattice docs給出的示例圖:帶格子的條形圖:我的數據是否太大?

#EXAMPLE GRAPH, not my data 
> barchart(yield ~ variety | site, data = barley, 
+   groups = year, layout = c(1,6), stack = TRUE, 
+   auto.key = list(points = FALSE, rectangles = TRUE, space = "right"), 
+   ylab = "Barley Yield (bushels/acre)", 
+   scales = list(x = list(rot = 45))) 

melt編我的數據來獲得這個「長」的形式數據框:

> str(MDist) 
'data.frame': 34560 obs. of 6 variables: 
$ fCycle : Factor w/ 2 levels "Dark","Light": 2 2 2 2 2 2 2 2 2 2 ... 
$ groupname: Factor w/ 8 levels "rowA","rowB",..: 1 1 1 1 1 1 1 1 1 1 ... 
$ location : Factor w/ 96 levels "c1","c10","c11",..: 1 1 1 1 1 1 1 1 1 1 ... 
$ timepoint: num 1 2 3 4 5 6 7 8 9 10 ... 
$ variable : Factor w/ 3 levels "inadist","smldist",..: 1 1 1 1 1 1 1 1 1 1 ... 
$ value : num 0 55.7 75.3 99.2 45.9 73.8 79.3 73.5 69.8 67.6 ... 

我想創建一個每個組名和fCycle的堆疊條形圖。我試過這個:

barchart(value~timepoint|groupname*fCycle, data=MDist, groups=variable,stack=T) 

它不會拋出任何錯誤,但它仍然在思考30分鐘後。這是因爲它不知道如何處理對每個酒吧有貢獻的36個值?如何讓這些數據更易於條形圖消化?

回答

1

我不知道晶格好,但可能是因爲你的timepoint變量是數字,而不是一個因素?

+0

我嘗試過'條形圖(值〜因子(時間點)|組名= fCycle,數據= MDist,組=變量,堆棧= T)'同樣缺乏結果。 – dnagirl 2010-07-21 20:22:50

+1

然後我難住了。這不是你的問題的答案,但我敢肯定'ggplot2'代碼將是 'qplot(factor(timepoint),value,fill = variable,facets = groupname〜fCycle,geom =「bar」 ,data = MDist)' – JoFrhwld 2010-07-21 20:27:06

+0

好主意!所以我試了一下,但它給了我「pmin(y,0)中的錯誤:未找到對象'y'」。我不確定這是什麼意思,因爲'y <-MDist $ value' – dnagirl 2010-07-21 20:35:14