【发布时间】:2017-06-28 12:01:34
【问题描述】:
我有如下表格:
Day |Date |Temp1
----|-----------|---------------
1 |9/15/2014 |85
2 |9/16/2014 |85
3 |9/17/2014 |88
4 |9/18/2014 |83
.. |..... |..
871 |6/8/2017 |98
我有很多数据作为日期列,从 2014 年 9 月 15 日到 2017 年 6 月 8 日。我选择在这 6 个月里为 ggplot clean 取值。
这是我的代码:
library(ggplot2)
#library(Rserve)
#Rserve(args = "--vanilla")
Test <- read_csv("C:/Users/..../Desktop/Myfile.csv")
valueDatemax <- max(Test$Date)
valueDatemin <- min(Test$Date)
# Simulate some data
df <- data.frame(Test,
Test$Date <- seq.Date(from = as.Date(valueDatemin),
to = as.Date(valueDatemax),
by="6 month"))
require(ggplot2)
p<-ggplot(df, aes(x=Test$Date, y=Temp1))
print(p)
但是我有一个我不明白的错误,我尝试了网上所有的解决方案,但我没有找到。
这是错误:
Error in `$<-.data.frame`(`*tmp*`, Date, value = c(-719143, -718962, -718778, :
replacement has 18 rows, data has 871
我希望之后可以选择我的日期范围,例如最后 30 天。
你能帮帮我吗?
谢谢
【问题讨论】:
-
你为什么在数据框中调用变量
dfTest$Date?只需将其命名为Date,并在您的aes调用中直接引用它。 -
我按照您的建议将
Test$Date替换为Date。但我有大致相同的错误:Error in data.frame(Test, Date <- seq.Date(from = as.Date(valueDatemin), : arguments imply differing number of rows: 871, 18 -
哪里出错了?在创建
df或绘图时?如果没有可重复的示例,任何人都很难提供帮助。