首页 > 解决方案 > 如何正确绘制月度销售数据?

问题描述

我正在尝试使用 RStudio 绘制月度销售数据,但 x 轴上的日期显示不正确。

我的代码:-

uc_ts_plot <- ggplot(monthly_sales, aes(DATE,DAUTONSA)) + geom_line(na.rm=TRUE) + 
  xlab("Month") + ylab("Auto Sales in Thousands") + 
  scale_x_date(labels = date_format(format= "%b-%Y"),
               breaks = date_breaks("1 year")) + 
  stat_smooth(colour = "green")

uc_ts_plot

我希望 x 轴上的日期显示为 Jan-2011、Jan-2012,如下所示

我得到的只是左端的 0001-01 和 x 轴右端的 0002-01。

标签: rggplot2

解决方案


显示的图是在 2011 年和 2018 年之间过滤的,而您拥有的数据来自 1967 年。

下面的代码产生了准确的情节

library(tidyverse)
library(scales)
library(lubridate)

monthly_sales %>%
  mutate(DATE = as.Date(DATE)) %>%
  filter(year(DATE) >= 2011 & year(DATE) < 2018) %>%
  ggplot() + aes(DATE,DAUTONSA) + 
  geom_line(na.rm=TRUE) + 
  xlab("Month") + ylab("Auto Sales in Thousands") + 
  scale_x_date(labels = date_format(format= "%b-%Y"),
               breaks = date_breaks("1 year")) + 
  stat_smooth(colour = "green")

在此处输入图像描述

您可以删除filter绘制所有年份数据的步骤,但随后会用大量标签使 x 轴混乱。


推荐阅读