Nothing
## ----setup, include = FALSE---------------------------------------------------
knitr::opts_chunk$set(echo = TRUE)
## ----installation1, eval=FALSE------------------------------------------------
# install.packages("hydroTSM")
## ----installation2, eval=FALSE------------------------------------------------
# if (!require(devtools)) install.packages("devtools")
# library(devtools)
# install_github("hzambran/hydroTSM")
## ----LoadingPkg---------------------------------------------------------------
library(hydroTSM)
## ----LoadingData--------------------------------------------------------------
data(SanMartinoPPts)
## ----Window1------------------------------------------------------------------
x <- window(SanMartinoPPts, start="1985-01-01")
## ----Dates--------------------------------------------------------------------
dates <- time(x)
## ----yip----------------------------------------------------------------------
( nyears <- yip(from=start(x), to=end(x), out.type="nmbr" ) )
## ----smry---------------------------------------------------------------------
smry(x)
## ----dwi1---------------------------------------------------------------------
dwi(x)
## ----dwi2---------------------------------------------------------------------
dwi(x, out.unit="mpy")
## ----Custom_daily2monthly-----------------------------------------------------
# Loading the DAILY precipitation data at SanMartino
data(SanMartinoPPts)
y <- SanMartinoPPts
# Subsetting 'y' to its first three months (Jan/1921 - Mar/1921)
y <- window(y, end="1921-03-31")
## Transforming into NA the 10% of values in 'y'
set.seed(10) # for reproducible results
n <- length(y)
n.nas <- round(0.1*n, 0)
na.index <- sample(1:n, n.nas)
y[na.index] <- NA
## Daily to monthly, only for months with less than 10% of missing values
(m2 <- daily2monthly(y, FUN=sum, na.rm=TRUE, na.rm.max=0.1))
# Verifying that the second and third month of 'x' had 10% or more of missing values
cmv(y, tscale="month")
## ----hydroplot, fig.width=10, fig.height=8------------------------------------
hydroplot(x, var.type="Precipitation", main="at San Martino",
pfreq = "dm", from="1987-01-01")
## ----calendarHeatmap, fig.width=8.6, fig.height=8.7---------------------------
calendarHeatmap(x)
## ----Window3------------------------------------------------------------------
yy <- window(SanMartinoPPts, start="1990-10-01")
## ----hydroplot3---------------------------------------------------------------
hydroplot(yy, ptype="ts", pfreq="o", var.unit="mm")
## ----daily2annual-------------------------------------------------------------
daily2annual(x, FUN=sum, na.rm=TRUE)
## ----daily2annual2------------------------------------------------------------
mean( daily2annual(x, FUN=sum, na.rm=TRUE) )
## ----annualfunction-----------------------------------------------------------
annualfunction(x, FUN=sum, na.rm=TRUE) / nyears
## ----matrixplot---------------------------------------------------------------
# Daily zoo to monthly zoo
m <- daily2monthly(x, FUN=sum, na.rm=TRUE)
# Creating a matrix with monthly values per year in each column
M <- matrix(m, ncol=12, byrow=TRUE)
colnames(M) <- month.abb
rownames(M) <- unique(format(time(m), "%Y"))
# Plotting the monthly precipitation values
require(lattice)
print(matrixplot(M, ColorRamp="Precipitation",
main="Monthly precipitation at San Martino st., [mm/month]"))
## ----monthlyfunction----------------------------------------------------------
monthlyfunction(m, FUN=median, na.rm=TRUE)
## ----cmonth-------------------------------------------------------------------
cmonth <- format(time(m), "%b")
## ----months-------------------------------------------------------------------
months <- factor(cmonth, levels=unique(cmonth), ordered=TRUE)
## ----boxplotMonthly-----------------------------------------------------------
boxplot( coredata(m) ~ months, col="lightblue", main="Monthly Precipitation",
ylab="Precipitation, [mm]", xlab="Month")
## ----seasonalfunction---------------------------------------------------------
seasonalfunction(x, FUN=sum, na.rm=TRUE) / nyears
## ----dm2seasonal--------------------------------------------------------------
( DJF <- dm2seasonal(x, season="DJF", FUN=sum) )
( MAM <- dm2seasonal(m, season="MAM", FUN=sum) )
( JJA <- dm2seasonal(m, season="JJA", FUN=sum) )
( SON <- dm2seasonal(m, season="SON", FUN=sum) )
## ----hydroplot2, fig.width=12, fig.height=10----------------------------------
hydroplot(x, pfreq="seasonal", FUN=sum, stype="default")
## ----LoadingData2-------------------------------------------------------------
data(SanMartinoPPts)
## ----Window4------------------------------------------------------------------
x <- window(SanMartinoPPts, start="1985-10-01")
## ----hydroplot4---------------------------------------------------------------
hydroplot(x, ptype="ts", pfreq="o", var.unit="mm")
## ----SeasonalityIndex---------------------------------------------------------
si(x)
## ----R10mm--------------------------------------------------------------------
( R10mm <- length( x[x>10] ) )
## ----wet_index----------------------------------------------------------------
wet.index <- which(x >= 1)
## ----PRwn95-------------------------------------------------------------------
( PRwn95 <- quantile(x[wet.index], probs=0.95, na.rm=TRUE) )
## ----very_wet_index-----------------------------------------------------------
(very.wet.index <- which(x >= PRwn95))
## ----R95p---------------------------------------------------------------------
( R95p <- sum(x[very.wet.index]) )
## ----x_5max-------------------------------------------------------------------
x.5max <- rollapply(data=x, width=5, FUN=sum, fill=NA, partial= TRUE,
align="center")
hydroplot(x.5max, ptype="ts+boxplot", pfreq="o", var.unit="mm")
## ----(x_5max_annual-----------------------------------------------------------
(x.5max.annual <- daily2annual(x.5max, FUN=max, na.rm=TRUE))
## ----climograph1, fig.width = 8, fig.height = 7, , dpi=100, fig.align = "center", dev.args=list(pointsize = 9)----
# Loading daily ts of precipitation, maximum and minimum temperature
data(MaquehueTemuco)
# extracting individual ts of precipitation, maximum and minimum temperature
pcp <- MaquehueTemuco[, 1]
tmx <- MaquehueTemuco[, 2]
tmn <- MaquehueTemuco[, 3]
## ----climograph2, fig.width = 8, fig.height = 7, , dpi=100, fig.align = "center", dev.args=list(pointsize = 9)----
m <- climograph(pcp=pcp, tmx=tmx, tmn=tmn, na.rm=TRUE,
main="Maquehue Temuco Ad (Chile)", lat=-38.770, lon=-72.637)
## ----climograph3, fig.width = 8, fig.height = 7, , dpi=100, fig.align = "center", dev.args=list(pointsize = 9)----
m <- climograph(pcp=pcp, tmx=tmx, tmn=tmn, na.rm=TRUE, tmx.labels=FALSE, tmn.labels=FALSE,
main="Maquehue Temuco Ad (Chile)", lat=-38.770, lon=-72.637)
## ----climograph4, fig.width = 8, fig.height = 7, , dpi=100, fig.align = "center", dev.args=list(pointsize = 9)----
m <- climograph(pcp=pcp, tmx=tmx, tmn=tmn, na.rm=TRUE,
pcp.labels=FALSE, tmean.labels=FALSE, tmx.labels=FALSE, tmn.labels=FALSE,
main="Maquehue Temuco Ad (Chile)", lat=-38.770, lon=-72.637)
## ----climograph5, fig.width = 8, fig.height = 7, , dpi=100, fig.align = "center", dev.args=list(pointsize = 9)----
m <- climograph(pcp=pcp, tmx=tmx, tmn=tmn, na.rm=TRUE,
start.month=4, temp.labels.dx=c(rep(-0.2,4), rep(0.2,6),rep(-0.2,2)),
main="Maquehue Temuco Ad (Chile)", lat=-38.770, lon=-72.637)
## ----echo=FALSE---------------------------------------------------------------
sessionInfo()$platform
sessionInfo()$R.version$version.string
paste("hydroTSM", sessionInfo()$otherPkgs$hydroTSM$Version)
## ----FAQmatrixplot1, fig.width = 8, fig.height = 7, , dpi=100, fig.align = "center", dev.args=list(pointsize = 9)----
library(hydroTSM)
data(SanMartinoPPts)
x <- window(SanMartinoPPts, end=as.Date("1960-12-31"))
m <- daily2monthly(x, FUN=sum, na.rm=TRUE)
M <- matrix(m, ncol=12, byrow=TRUE)
colnames(M) <- month.abb
rownames(M) <- unique(format(time(m), "%Y"))
p <- matrixplot(M, ColorRamp="Precipitation", main="Monthly precipitation,")
print(p, position=c(0, .6, 1, 1), more=TRUE)
print(p, position=c(0, 0, 1, .4))
## ----FAQmatrixplot2, fig.width = 8, fig.height = 7, , dpi=100, fig.align = "center", dev.args=list(pointsize = 9), eval=TRUE----
if (!require(gridExtra)) install.packages("gridExtra")
require(gridExtra) # also loads grid
require(lattice)
grid.arrange(p, p, nrow=2)
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.