使用 ggplot 绘制每月数据

Cen*_*tin 5 r ggplot2

我试图使用 ggplot 绘制如下所示的每月数据

  计算日期
      2010 年 10 月 6 日
     2010 年 11 月 23 日
     2010 年 12 月 20 日
     2011 年 1 月 16 日
     2011 年 10 月 64 日
     ...
    425 2012 年 7 月
    436 2012 年 8 月
    405 2012 年 9 月

其中 date 是 Zoo 包中的yearmon 类。

这是我的电话:

ggplot(data, aes(x=date, y=count))+geom_line()
Run Code Online (Sandbox Code Playgroud)

出现了这个错误:错误:提供给连续刻度的离散值。

所以 ggplot 不支持yearmon类,这很好。

然后我尝试将yearmon 转换为Date。现在数据如下所示:

计算日期
     6 2010-10-01
    23 2010-11-01
    20 2010-12-01
    16 2011-01-01
    64 2011-10-01
   ...
   425 2012-07-01
   436 2012-08-01
   405 2012-09-01

我打了同样的电话,这就是结果图(对 href 感​​到抱歉...不允许新用户发布图像)

绘图末尾有一个不应该出现的下降,因为 data$count 在最后几行具有相似的值。

有人对此有好的解决方案吗?

谢谢阅读,

账单

bde*_*est 2

我无法重现线条意外落在图右侧的问题。这是我使用的代码和输出:

library(ggplot2)

dat = read.table(header=TRUE, colClasses=c("numeric", "Date"),
text=" count       date
     6 2010-10-01
    23 2010-11-01
    20 2010-12-01
    16 2011-01-01
    64 2011-10-01
   425 2012-07-01
   436 2012-08-01
   405 2012-09-01")

plot_1 = ggplot(dat, aes(x=date, y=count)) + geom_line()
ggsave("plot_1.png", plot_1, height=4.5, width=4.5)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

您可以考虑在日期转换之前和之后发布数据(使用dput())以帮助人们重现您的问题。