Learn R Programming

VGAM (version 0.7-5)

rlplot.egev: Return Level Plot for GEV Fits

Description

A return level plot is constructed for a GEV-type model.

Usage

rlplot.egev(object, plot.it = TRUE,
    probability = c((1:9)/100, (1:9)/10, 0.95, 0.99, 0.995, 0.999),
    add.arg = FALSE, xlab = "Return Period", ylab = "Return Level",
    main = "Return Level Plot",
    pch = par()$pch, pcol.arg = par()$col, pcex = par()$cex,
    llty.arg = par()$lty, lcol.arg = par()$col, llwd.arg = par()$lwd,
    slty.arg = par()$lty, scol.arg = par()$col, slwd.arg = par()$lwd,
    ylim = NULL, Log = TRUE, CI = TRUE, epsilon = 1e-05, ...)

Arguments

Value

  • In the post slot of the object is a list called rlplot with list components
  • yp-log(probability), which is used on the x-axis.
  • zpvalues which are used for the y-axis
  • lower, upperlower and upper confidence limits for the 95 percent confidence intervals evaluated at the values of probability (if CI=TRUE).

Details

A return level plot plots $z_p$ versus $\log(y_p)$. It is linear if the shape parameter $\xi=0$. If $\xi<0$ then="" the="" plot="" is="" convex="" with="" asymptotic="" limit="" as="" $p$="" approaches="" zero="" at="" $\mu-\sigma="" \xi$.="" and="" if="" $\xi="">0$ then the plot is concave and has no finite bound. Here, $G(z_p) = 1-p$ where $0probability) and $G$ is the cumulative distribution function of the GEV distribution. The quantity $z_p$ is known as the return level associated with the return period $1/p$. For many applications, this means $z_p$ is exceeded by the annual maximum in any particular year with probability $p$.

The points in the plot are the actual data.

References

Coles, S. (2001) An Introduction to Statistical Modeling of Extreme Values. London: Springer-Verlag.

See Also

egev.

Examples

Run this code
y = rgev(n <- 100, scale=exp(1), shape = -0.1)
fit = vglm(y ~ 1, egev, trace=TRUE)

# Identity link for all parameters:
fit2 = vglm(y ~ 1, egev(lsh=identity, lsc=identity, isc=10), trace=TRUE)
par(mfrow=c(1,2))
rlplot(fit) -> i1
rlplot(fit2, pcol="darkorange", lcol="blue", Log=FALSE,
       scol="darkgreen", slty="dashed") -> i2
range(i2@post$rlplot$upper - i1@post$rlplot$upper) # Should be near 0
range(i2@post$rlplot$lower - i1@post$rlplot$lower) # Should be near 0

Run the code above in your browser using DataLab