2011-11-29 35 views
1

我在ggplots中冒險嘗試babysteps,需要一些幫助解決以下問題! 我有一個dataframe稱爲dftemp它具有以下結構ggplot + geom_bar的y值沒有正確顯示

Year Month Values 
1 1996 Jan  0 
2 1996 Feb  0 
3 1996 Mar  0 
4 1996 Apr  0 
5 1996 May  0 
6 1996 Jun  0 
7 1996 Jul  0 
8 1996 Aug  0 
9 1996 Sep  0 
10 1996 Oct  0 
11 1996 Nov  0 
12 1996 Dec  0 

此這樣下去,直到:

181 2011 Jan  -3 
182 2011 Feb  2 
183 2011 Mar  2 
184 2011 Apr  6 
185 2011 May -13 
186 2011 Jun  -4 
187 2011 Jul  0 
188 2011 Aug  0 
189 2011 Sep  0 
190 2011 Oct  -7 
191 2011 Nov  -7 
192 2011 Dec  0 

我試圖做一個條形圖:

ggplot(dftemp,aes(x=Month,y=Values,fill=Year))+geom_bar(binwidth=10) 

和GOT有些奇怪和錯誤(遺憾的是我的名聲不夠高,所以我不能發佈圖像)。結果圖有y值,w在y軸的底部非常緊密地擠在一起..

我不明白我在做什麼錯在這裏!我試着把factor()放在aes輸入的前面,但無濟於事!

回答

1

你的第一個挑戰是使用STAT =「身份」的說法在geom_bar

目前尚不清楚你想什麼陰謀,或者你打算如何您的數據結合起來,所以我會提供一個幾個選項。

首先,讓我們重建你的數據使用說明:

library(chron) 
tt = seq(chron("1/1/1996"),chron("12/31/2011"),by="months") 
dftemp = as.data.frame() 
dftemp$datestamps = tt 
dftemp$years = years(tt) 
dftemp$months = months(tt) 
dftemp$values = round(runif(length(tt),-15,15)) 

下面是一個簡單的柱狀圖中,對於每一日期戳一個酒吧:

每月
ggplot(dftemp,aes(x=datestamps,y=values))+geom_bar(stat="identity",position="dodge") 

一個柱狀圖,堆疊

ggplot(dftemp,aes(x=months,y=values))+geom_bar(stat="identity") 

每年一個酒吧,堆積

ggplot(dftemp,aes(x=years,y=values))+geom_bar(stat="identity") 
+0

謝謝你現在的作品! – LonelyBear