R ggplot如何显示上个月期间的数据
我有这段代码。 我的目标是绘制上个月的数据。 我在网上看到,可以使用R ggplot如何显示上个月期间的数据,r,ggplot2,R,Ggplot2,我有这段代码。 我的目标是绘制上个月的数据。 我在网上看到,可以使用scale\u x\u date(limits=as.date 因此,第一步我尝试在指定的时间范围内绘制数据……例如2020-05-01、“2020-09-09” 但是当我把这个代码插入我的ggplot时,我得到了这个错误 无效输入:date\u trans仅适用于类date的对象 你知道怎么了吗 数据帧示例:从csv读取 "date","diff" 2020-01-22,555 2020
scale\u x\u date(limits=as.date
因此,第一步我尝试在指定的时间范围内绘制数据……例如2020-05-01、“2020-09-09”
但是当我把这个代码插入我的ggplot时,我得到了这个错误
无效输入:date\u trans仅适用于类date的对象
你知道怎么了吗
数据帧示例:从csv读取
"date","diff"
2020-01-22,555
2020-01-23,99
2020-01-24,287
2020-01-25,493
...
代码:
使用您的数据,首先尝试以下方法:
library(ggplot2)
#Transform
conf_all_data$date <- as.Date(conf_all$date)
#Code
ggplot(conf_all_data, aes(x=date, y=diff,
label=paste(date, "\n" , "Confirmed:", diff ))) +
geom_bar(stat='identity',fill='blue') +
scale_y_continuous(labels = scales::comma)
库(ggplot2)
#转化
确认所有数据$date,因为您的日期不是日期类型
例如,此代码包含经济数据集和您的限制日期:
ggplot(data = economics) +
geom_line(aes(x = date, y = unemploy),
color = "#09557f",
alpha = 0.6,
size = 0.6) +
labs(x = "Date",
y = "US Unemployed in Thousands",
title = "Base Plot") +
scale_x_date(limits = as.Date(c("1999-05-01","1999-09-09"))) +
theme_minimal()
您得到的错误类似于试图绘制geom_线(aes(x=as.character(date),y=unemploy)
,这会引发
使用函数修复它。好的,我刚刚找到了使用lubridate进行减法日期的解决方案。
e、 g
库(lubridate)
日期是的,这是working@Andrew太好了!总是很乐意帮忙:)嘿,鸭子,它起作用了,因为我删除了我有问题的代码:scale_x_date…:)你知道如何修复吗?@Andrew在scale_x_date()中玩date_breaks
像scale_x_date(date_breaks='1个月')
'scale_x_date(date_breaks='1个月'))'有同样的错误,无论如何我更新了我的问题和屏幕截图。嗯,你的工作示例看起来与我的类似,我还有as.Date函数,scale\u x\u Date(limits=as.Date
那么为什么不使用我的示例呢?顶部的日期也是日期吗?as.Date
不应该只出现在比例x_日期中。如果两者都是日期,那么可能是其他地方的问题。好的,但是如果日期不是日期类型,为什么ggplot可以绘制这个数据框而没有问题?我如何检查date是否为date?您可以使用来检查。
library(ggplot2)
#Transform
conf_all_data$date <- as.Date(conf_all$date)
#Code
ggplot(conf_all_data, aes(x=date, y=diff,
label=paste(date, "\n" , "Confirmed:", diff ))) +
geom_bar(stat='identity',fill='blue') +
scale_y_continuous(labels = scales::comma)
ggplot(data = economics) +
geom_line(aes(x = date, y = unemploy),
color = "#09557f",
alpha = 0.6,
size = 0.6) +
labs(x = "Date",
y = "US Unemployed in Thousands",
title = "Base Plot") +
scale_x_date(limits = as.Date(c("1999-05-01","1999-09-09"))) +
theme_minimal()
library(lubridate)
date <- As.Date("2009-10-01")
ymd(date) - 5
# [1] "2009-09-26"