ggrough is a great package that can be used to make graphs that look hand-drawn. This can be a great aesthetic choice when giving presentations and making handouts.

Michael DeWitt

So I came across another ggplot2 package which I like. It bootstraps off of a javascript library called roughjs. I like that you can make graphs and charts that look handdrawn. This is a great feature when doing data communication. It makes the look less clinical which might be a good tactic when doing a data visualisation clinic where the focus is on the chart type and how it communicates.

Warm and friendly is a good approach when doing these types of trainings with graphical neophytes.

The package information is here

Some examples of their code are below:


count(mtcars, carb) %>%
  ggplot(aes(carb, n)) +
  geom_col() + 
  labs(title="Number of cars by carburator count") + 
  theme_grey(base_size = 16) -> p 

options <- list(
  GeomCol=list(fill_style="zigzag", angle_noise=0.5, fill_weight=2))
p2<-get_rough_chart(p, options)


If you see mistakes or want to suggest changes, please create an issue on the source repository.


Text and figures are licensed under Creative Commons Attribution CC BY 4.0. Source code is available at, unless otherwise noted. The figures that have been reused from other sources don't fall under this license and can be recognized by a note in their caption: "Figure from ...".


For attribution, please cite this work as

DeWitt (2018, July 5). Michael DeWitt: ggrough. Retrieved from

BibTeX citation

  author = {DeWitt, Michael},
  title = {Michael DeWitt: ggrough},
  url = {},
  year = {2018}