title: Multi-level (grouped) labels on one axis with automatic layout
body: <p>Is it possible to have multiple levels of labels on one axis in bokeh? That is, for a datasource like</p>
  
  <pre><code>TheBars | ThFoos | TheValues
  --------|--------|----------
  Bar     | Barfoo | 5
  Bar     | Bargoo | 6
  Bar     | Barhoo | 7
  Foo     | Foobar | 1
  Foo     | Foocar | 2
  </code></pre>
  
  <p>... all columns in groups <code>Bar</code> and <code>Foo</code> shall be not only grouped together but also have a common group-label attached to the axis. In a Excel-rendered example:</p>
  
  <p><a href="https://i.stack.imgur.com/VJbew.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/VJbew.jpg" alt="Multi-level labels"></a></p>
  
  <p>I'm currently using <code>bokeh.models.CategoricalColorMapper</code> to separate the groups visually and use ordering in the datasource to make the groups stick together. This works fine, I'd like the labels as well though.</p>