2016-10-13 60 views
0

我使用ggplot得到一個錯誤,我不知道如何解決它。我使用的是這樣的數據:使用ggplot繪製時間序列數據的錯誤

 Date sent.mean 
1 14-03-01 3.000000 
2 14-03-03 1.600000 
3 14-03-04 3.000000 
4 14-03-05 1.142857 
5 14-03-06 2.625000 
6 14-03-07 2.083333 

我使用生成生成日K線圖中的代碼是:

ggplot(date.mean, aes(Date, sent.mean)) + geom_line() + 
    scale_x_date(format = "%b-%Y") + xlab("") + ylab("Average Sentiment") 

我得到的錯誤是:

Error in scale_x_date(format = "%b-%Y") : 
    unused argument (format = "%b-%Y") 

任何幫助,非常感謝!

+1

沒有爭議'format',但'date_labels'。所以你非常想'scale_x_date(date_labels =「%b-%Y」)' – lukeA

+0

謝謝@lukeA。我做了這個改變,現在得到這個錯誤:錯誤:無效的輸入:date_trans只與Date類的對象一起工作。你知道我該如何解決這個錯誤? – tlev

+0

請參閱@alistaire的答案:您必須確保您的Date日期列被識別爲R類型的日期 - 我認爲它是現在的因素類型字符。爲了說明,你需要提供一個[可重現的例子](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example#answer-5963610)準備複製粘貼-跑。 – lukeA

回答

1

首先,你需要分析你日期:

df$Date <- as.Date(df$Date, '%y-%m-%d') 

然後,參數實際上並沒有所謂的format,但date_labels,你可以通過閱讀?scale_x_date找到。清理了一點:

ggplot(df, aes(Date, sent.mean)) + 
    geom_line() + 
    scale_x_date(NULL, date_labels = "%b-%Y") + 
    ylab("Average Sentiment") 

plot with fixed axis labels