title: Adding patterns or textures to geom_bar() / geom_col() bars?
body: <p>On occasion, I have the need for some kind of pattern or textures for geom_bar() / geom_col() bars (i.e., for black-and-white printing). For example, the following can be hard for some people to view:</p>
  
  <pre><code>library(ggplot2)
  library(dplyr, warn.conflicts=FALSE)
  library(tidyr)
  
  d &lt;- iris %&gt;% 
      group_by(Species) %&gt;% 
      summarize_all(mean) %&gt;% 
      gather(key, val, -Species)
  
  ggplot(d, aes(x = Species, y = val, fill = key)) +
      geom_col(position = "dodge") +
      scale_fill_grey()
  </code></pre>
  
  <p><a href="https://i.stack.imgur.com/QWknQ.png" rel="noreferrer"><img src="https://i.stack.imgur.com/QWknQ.png" alt="example bar chart"></a></p>
  
  <p>There have been <a href="https://stackoverflow.com/questions/2895319/how-to-add-texture-to-fill-colors-in-ggplot2">good questions and answers on Stack Overflow</a> (also <a href="https://stackoverflow.com/questions/21338103/filling-bars-in-barplot-with-textiles-in-ggplot2?noredirect=1&amp;lq=1">here</a>). However, the solutions are complicated and basically involve creating the patterns or textures by hand. I'm wondering if anyone has general ideas or suggestions or new approaches to solving this problem in a different way. Oftentimes when I think I can't do something with ggplot2, it means changing how I think about addressing it - but other (rare) times it just isn't implemented yet!</p>