Plot cumulative sums of rainfall per year
Hi
-----Original Message-----
From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-
project.org] On Behalf Of Martin Labadz
Sent: Tuesday, March 26, 2013 6:44 AM
To: r-help at r-project.org
Subject: [R] Plot cumulative sums of rainfall per year
Hi @all,
I am biting my nails with the following problem:
I have a data set of daily rainfall measurements for the last 20 years.
What I want to do is calculate the daily cumulative sum of rainfall but
only for every year which means that the cumulative sum has to be reset
each year. After the calculations I want to plot each year of
cumulative rainfall as a separate line in one graph preferably using
ggplot with the x-axis showing the julian day 1 to 365 (366) and the y-
axis showing the cumulative values.
I have the following code:
library(plyr)
library(ggplot2)
data<-read.csv("http://dl.dropbox.com/u/4236038/test_cumu.csv")
data$year <- as.numeric(format(as.Date(data$Date), format="%Y"))
ddply(data,.(year),transform,cumRain = cumsum(Rainfall))->cumu
ggplot(cumu, aes(Date,cumRain))+geom_point()
Date in your cumu is not date but factor.
Maybe it can be accomplished by ggplot but in that case I would use standard plot.
cumu$dat<-as.Date(cumu$Date)
cumu$mon<-as.Date(format(cumu$dat, paste("%d.%m", 2012, sep=".")), format="%d.%m.%Y")
lll<-split(cumu[,c(4, 6)], cumu$year)
plot(lll[[1]][[2]], lll[[1]][[1]], type="l")
lines(lll[[2]][[2]], lll[[2]][[1]], col=2)
you can use ylim to set proper range and put lines command into for cycle if necessary.
Regards
Petr
What it does it perfectly calculates the cumulative sum of the rainfall and resets the sum at the beginning of each year but I cannot plot the cumulative sum of rainfall in a way that each year is represented by a separate line in one graph such as in this example: http://dl.dropbox.com/u/4236038/example_cumulative_rainfall.png Any help would be highly appreciated. Thanks, Martin
______________________________________________ R-help at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting- guide.html and provide commented, minimal, self-contained, reproducible code.