6 ms·
ggplot2 is beautiful by default and it's full of interesting features. But it still remains unusable for publication due to lack of even basic B&W support. It
by jbmorgado 10y ago
ggplot2 is beautiful by default and it's full of interesting features.
But it still remains unusable for publication due to lack of even basic B&W support. It can't do even the basics like filling a curve with a pattern instead of a color.
When you are publishing in academia, many journals ask extra for publishing in Color or don't even support it, so this is an important feature.
I end up using matplotlib in python, which - unlike what some people think - can be make to output fantastic quality graphics, although with a lot more effort than ggplot2.
You can check https://github.com/jbmouret/matplotlib_for_papers https://github.com/jbmouret/matplotlib_for_papers for an excellent introduction on how to tune matplotlib to use in papers.
- nerdponx 10y agoApart from using patterns instead of colors for filling space, what other black and white support does it lack?
- jbmorgado 10y agoBetter manipulation of axis is one. For instance, being able to add divisions and sub divisions just to the axis and do away without lines through all the plot area.
- rz2k 10y agoDo you ever use lattice? It seems to have a lot of good default styles for black and white.
- jbmorgado 10y agoWell, lattice has really nice defaults to reduce the clutter when printing. But it's still missing patterns for filling curves as any other library based in ggplot2 because ggplot2 simply doesn't have support for it. What is more strange, is that most modern libraries (plotly, bokeh, etc) also do away without those capabilities. The result, is that they all look very nice on the screen, but when you have to print in B&W or low color resolution, they all fail.
- hooloovoo_zoo 10y agoWhen you say "filling a curve with a pattern instead of a color, do you mean like this http://docs.ggplot2.org/0.9.3.1/aes_linetype_size_shape.html http://docs.ggplot2.org/0.9.3.1/aes_linetype_size_shape.html?
- jbmorgado 10y agoNo, that's a line. I mean filling the curve, as in 2D, i.e. instead of using a solid color, using a pattern.
- olsgaard 10y agoHe means hatches, similar to how the hatch demo [1] fills in boxplots [1] http://matplotlib.org/examples/pylab_examples/hatch_demo.html http://matplotlib.org/examples/pylab_examples/hatch_demo.htm...
- olsgaard 10y agoI didn't see anything about hatches in your link, which was surprising, since that is basically what you are saying is missing in ggplot. I too was in need of monochrome for my thesis, and did a write-up for how to handle this in matplotlib by using hatches and cycles http://olsgaard.dk/monochrome-black-white-plots-in-matplotlib.html http://olsgaard.dk/monochrome-black-white-plots-in-matplotli...