Box Plot as Goal Post

May 7, 2016

(This article was first published on AdventuresInData, and kindly contributed to R-bloggers)

For as long as I have been working with water data, I wanted to construct a line graph superimposed on a box and whisker plot where the boxes show the distribution of values and the line shows some current condition.  One of my favorite things about ggplot2 is that it allows users to construct complex combinations of graphs in ways that make sense.

This plot shows daily mean flow values in the Schuylkill River (the blue line) against box plots of the rolling 20-year set of daily mean values.  In this instance, flows in the lower part of the river are higher than the 75th percentile flow value, while flows in the upper part of the river are within the interquartile range.  Each point (and box plot) represents data from a USGS gage retrieved using the dataRetrieval library.  The vertical step increases in the blue line are inputs from tributary gages.  This particular image was developed as part of an automated dashboard hosted by the Delaware River Basin Commission.  R scripts, run in batch mode, are called by Windows Task Scheduler.  The scripts run overnight every night to retrieve data, develop new graphs, and upload the graphs to the dashboard web page providing a near real-time visualization of river conditions.

To leave a comment for the author, please follow the link and comment on their blog: AdventuresInData. offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

If you got this far, why not subscribe for updates from the site? Choose your flavor: e-mail, twitter, RSS, or facebook...

Comments are closed.

Search R-bloggers


Never miss an update!
Subscribe to R-bloggers to receive
e-mails with the latest R posts.
(You will not see this message again.)

Click here to close (This popup will not appear again)