fdcu {hydroTSM}  R Documentation 
Computes and plots the Flow Duration Curve (FDC) for the streamflows given by x
and for two uncertainty bounds, with the possibility of plotting an additional FDC representing simulated streamflows for x
, in order to compare them.
fdcu(x, lband, uband, ...) ## Default S3 method: fdcu(x, lband, uband, sim, lQ.thr=0.7, hQ.thr=0.2, plot=TRUE, log="y", main="Flow Duration Curve", xlab="% Time flow equalled or exceeded", ylab="Q, [m3/s]", ylim, yat=c(0.01, 0.1, 1), xat=c(0.01, 0.025, 0.05), col=c("black", "red"), pch=c(1, 15), lwd=c(1, 0.8), lty=c(1, 3), cex=0.2, cex.axis=1.2, cex.lab=1.2, leg.txt= c("Qobs", "Qsim", "95PPU"), leg.cex=1, leg.pos="auto", verbose= TRUE, thr.shw=TRUE, border=NA, bands.col="lightcyan", bands.density=NULL, bands.angle=45, new=TRUE, ...) ## S3 method for class 'matrix' fdcu(x, lband, uband, sim, lQ.thr=0.7, hQ.thr=0.2, plot=TRUE, log="y", main="Flow Duration Curve", xlab="% Time flow equalled or exceeded", ylab="Q, [m3/s]", ylim, yat=c(0.01, 0.1, 1), xat=c(0.01, 0.025, 0.05), col=matrix(c(rep("black", ncol(x)), palette("default")[2:(ncol(x)+1)]), byrow=FALSE, ncol=2), pch=matrix(rep(c(1, 15), ncol(x)), byrow=TRUE, ncol=2), lwd=matrix(rep(c(1, 0.8), ncol(x)), byrow=TRUE, ncol=2), lty=matrix(rep(c(1, 3), ncol(x)), byrow=TRUE, ncol=2), cex=rep(0.1, ncol(x)), cex.axis=1.2, cex.lab=1.2, leg.txt=c("OBS", colnames(x), "95PPU"), leg.cex=1, leg.pos="auto", verbose= TRUE, thr.shw=TRUE, border=rep(NA, ncol(x)), bands.col=rep("lightcyan", ncol(x)), bands.density=rep(NULL, ncol(x)), bands.angle=rep(45, ncol(x)), new=TRUE, ...) ## S3 method for class 'data.frame' fdcu(x, lband, uband, sim, lQ.thr=0.7, hQ.thr=0.2, plot=TRUE, log="y", main="Flow Duration Curve", xlab="% Time flow equalled or exceeded", ylab="Q, [m3/s]", ylim, yat=c(0.01, 0.1, 1), xat=c(0.01, 0.025, 0.05), col=matrix(c(rep("black", ncol(x)), palette("default")[2:(ncol(x)+1)]), byrow=FALSE, ncol=2), pch=matrix(rep(c(1, 15), ncol(x)), byrow=TRUE, ncol=2), lwd=matrix(rep(c(1, 0.8), ncol(x)), byrow=TRUE, ncol=2), lty=matrix(rep(c(1, 3), ncol(x)), byrow=TRUE, ncol=2), cex=rep(0.1, ncol(x)), cex.axis=1.2, cex.lab=1.2, leg.txt=c("OBS", colnames(x), "95PPU"), leg.cex=1, leg.pos="auto", verbose= TRUE, thr.shw=TRUE, border=rep(NA, ncol(x)), bands.col=rep("lightcyan", ncol(x)), bands.density=rep(NULL, ncol(x)), bands.angle=rep(45, ncol(x)), new=TRUE, ...)
x 
numeric, zoo, data.frame or matrix object with the observed streamflows for which the flow duration curve have to be computed. 
lband 
numeric, zoo, data.frame or matrix object with the streamflows representing the the lower uncertainty bound of 
uband 
numeric, zoo, data.frame or matrix object with the streamflows representing the the upper uncertainty bound of 
sim 
OPTIONAL. 
lQ.thr 
numeric, low flows separation threshold. If this value is different from 'NA', a vertical line is drawn in this value, and all the values to the left of it are deemed low flows. 
hQ.thr 
numeric, high flows separation threshold. If this value is different from 'NA', a vertical line is drawn in this value, and all the values to the right of it are deemed high flows 
plot 
logical. Indicates if the flow duration curve should be plotted or not. 
log 
character, indicates which axis has to be plotted with a logarithmic scale. Default value is y. 
main 

xlab 

ylab 

ylim 
See 
yat 
Only used when 
xat 
Only used when 
col 
See 
pch 
See 
lwd 
See 
lty 
See 
cex 
See 
cex.axis 
magnification of axis annotation relative to 'cex'. 
cex.lab 
Magnification to be used for x and y labels relative to the current setting of 'cex'. See '?par'. 
leg.txt 
vector with the names that have to be used for each column of 
leg.cex 
numeric, indicating the character expansion factor for the legend, *relative* to current 
leg.pos 
keyword to be used to position the legend. One of the list ‘"bottomright", "bottom", "bottomleft", "left", "topleft", "top", "topright", "right", "center"’. This places the legend on the inside of the plot frame at the given location. See 
verbose 
logical; if TRUE, progress messages are printed 
thr.shw 
logical, indicating if the streamflow values corresponding to the userdefined thresholds 
border 
See 
bands.col 
See 
bands.density 
See 
bands.angle 
See 
new 
logical, if TRUE, a new plotting window is created. 
... 
further arguments passed to or from other methods (to the plotting functions) 
If you do not want to use logarithmic scale for the streamflow axis, you can do it by passing the log=" "
to the ...
argument.
Mauricio ZambranoBigiarini, mzb.devel@gmail
Vogel, R., and N. M. Fennessey (1994), Flow duration curves I: A new interpretation and confidence intervals, ASCE, Journal of Water Resources Planning and Management, 120(4).
Vogel, R., and N. Fennessey (1995), Flow duration curves II: A review of applications in water resources planning, Water Resources Bulletin, 31(6), 10291039, doi:10.1111/j.17521688.1995.tb03419.x.
Yilmaz, K. K., H. V. Gupta, and T. Wagener (2008), A processbased diagnostic approach to model evaluation: Application to the NWS distributed hydrologic model, Water Resour. Res., 44, W09417, doi:10.1029/2007WR006716.
## Loading daily streamflows at the station Oca en Ona (Ebro River basin, Spain) ## data(OcaEnOnaQts) q < OcaEnOnaQts # Creating a fictitious lower uncertainty band lband < q  min(q, na.rm=TRUE) # Giving a fictitious upper uncertainty band uband < q + mean(q, na.rm=TRUE) # Plotting the flow duration curve corresponding to 'q', with two uncertainty bounds fdcu(q, lband, uband)