Two years ago, I blogged about my experience rewriting the plot.qcc() function in the qcc package to use ggplot2 and grid. My goal was to allow manipulation of qcc’s quality control plots using grid graphics, especially to combine range charts with their associated individuals or moving range charts, as these two diagnostic tools should be used together. At the time, I posted the code on my GitHub.
I recently discovered that the update to ggplot2 v2.0 broke my code, so that attempting to generate a qcc plot would throw an obscure error from someplace deep in ggplot2. The fix turned out to be pretty easy. The original code used
aes_string() instead of
aes() because of a barely-documented problem of calling
aes() inside a function. It looks like this has been quietly corrected with ggplot2 2.0, and
aes_string() is no longer needed for this.
The updated code is up on GitHub. As before, load the qcc library, then
qcc.plot.R. For the rest of the current session, calls to
qcc() will automatically use the new