【发布时间】:2019-10-18 22:09:34
【问题描述】:
我想绘制一个缺少日期和值的时间序列。这是一个例子:
library(lubridate)
date_list = seq(ymd('1990-05-01'),ymd('2000-09-30'),by='day')
date_list = date_list[which(month(date_list) %in% c(5:9))]
value_list1 = sample(1:40, 1683, replace=TRUE)
value_list2 = sample(1:40, 1683, replace=TRUE)
testsample = data.frame(Date = date_list, Value1 = value_list1, Value2 = value_list2)
library(ggplot2)
ggplot(data = testsample, aes(x = Date)) +
geom_line(aes(y = Value1), color = "black", size = 1, alpha=0.5) +
geom_line(aes(y = Value2), color = "red", size = 1, alpha=0.5) +
labs(subtitle="testplot",
x = "year",
y = "values") +
scale_x_date(date_labels="%y",date_breaks ="1 year")
我没有从 11 月到 4 月的日期和数据。
我的情节是这样的:
如何去除这些年份之间的连接线?我读过关于将日期转换为因子的内容,但我不确定这一点。还有其他解决方案吗?
【问题讨论】:
-
您可以将
group = format(Date, "%Y-%m")添加到您的aes-call 中,但是我发现这种数据表示形式的信息量不是很大... -
谢谢!这已经有很大帮助了。数据本身根本不重要。我只热衷于摆脱那些连接线。
-
如果您的缺失日期被标记为缺失值(带有
NA),它们将无法连接。 -
我没有你看到的任何数据。这是一个时间间隔。
-
并不意味着过于具体。如果您丢失的 > 被 标记 为缺失值(使用
NA),它们将不会被连接。