格式化日期与GGPLOT2 scale_x_date格式化日期与GGPLOT2 scale_x_da

2019-05-14 02:09发布

在以前的版本GGPLOT2的,我可以使用以下两个命令之一来格式化我的X日期:要么

scale_x_date(breaks = "1 month", minor_breaks = "1 week", labels=(date_format="%B")) +

要么

scale_x_date(major="months", minor="weeks", format="%B") +

以生产“%B”格式的全月的名字。

(我怕我再也不能区分哪一个工作,因为他们都注释掉了。)

我不记得的时候,但在一个Ubuntu 12.04升级更新R或ggplot后,这不再是为我工作。 现在,同样的数据产生错误:

Error in scale_labels.continuous(scale) : 
  Breaks and labels are different lengths

有了第一次,

Error in continuous_scale(aesthetics, "date", identity, breaks = breaks,  : 
  unused argument(s) (major = "months", minor = "weeks", format = "%B")

随着第二。

如果我删除标签=参数,并应用

scale_x_date(breaks = "1 month", minor_breaks = "1 week") +

它产生“YYYY-MM-DD”上的每月的第一天的日期格式。

?与帮助功能scale_x_date咨询,我也试过如下:

scale_x_date(breaks = "1 month", minor_breaks = "1 week", labels=date_format("%B")) +

但是,这会产生这个错误:

Error in structure(list(call = match.call(), aesthetics = aesthetics,  : 
  could not find function "date_format"

我怎样才能实现一个月名“%B”上我的X轴格式? (如果您有任何额外的见解产生这些错误信息的机制,我也将不胜感激。)

Answer 1:

随着新GGPLOT2 v 2.0.0,一个办法做到这一点是:

scale_x_date(date_breaks = "1 month", date_minor_breaks = "1 week", date_labels = "%B")


Answer 2:

没关系,答案是使用文档中找到的版本,

scale_x_date(breaks = "1 month", minor_breaks = "1 week", labels=date_format("%B")) +

并包括library(scales)的文件说。



文章来源: Formatting dates with scale_x_date in ggplot2