我有一个数据集,其中包含1989年以来一个地区的平均日气温.我的数据集摘录如下:
DATE MAX ATT TEMP
1 1989-01-04 33.8 26.2
2 1989-01-06 41.0 29.6
3 1989-01-09 43.5 * 38.5
4 1989-02-05 39.6 * 35.6
5 1989-02-25 41.0 * 36.1
6 1989-02-26 49.1 40.6
7 1989-03-04 60.4 * 57.9
8 1989-03-07 63.3 49.8
9 1989-03-09 64.4 * 54.0
10 1989-03-13 55.4 * 46.5
这一数据集跨越从1989年到2023年的多个年份.I want to plot a line graph where every year is a line, with data from the TEMP variable.个
我可以很容易地做到这一点,每个月的数据值,通过遵循类似this的解决方案.然而,这只创建了每月粒度的行,而我希望我的数据集中的每一天都有要表示的值.
我最初try 了以下代码:
library(ggplot2)
weather = read.csv("<FILE>")
weather$MonthN <- as.numeric(format(as.Date(weather$DATE_FORMAT),"%m")) # Month's number
weather$Month <- months(as.Date(weather$DATE_FORMAT), abbreviate=TRUE) # Month's abbr.
weather$Year <- (format(as.Date(weather$DATE_FORMAT),"%Y")) # Year's number
ggplot(data = weather, aes(x = DATE,
y = TEMP, group=Year, shape = Year, colour=Year)) +
geom_line() +
labs(x="Month", colour="Year") +
theme_classic()
遗憾的是,这只是创建了一个包含整个数据集的线形图,其中每一年都使用不同的 colored颜色 (我希望这样做,但每一年都是一条线):
我最初的 idea 是为一年中的每一天设定一个类似于月份的值,但闰年和其他事情,以及记录的数据条目不是均匀间隔的事实,意味着它不起作用.
以下是我的数据集: