title: How to make relative tile sizes in ggplot2 with geom_tile?
body: <p>I'm trying to make a visualization of sets of colors and their complements.  I want to use geom_tile to place them side by side.  My issue is that some target colors have multiple complements, so I need to be able to split the complement tile evenly between the colors.</p>
  
  <p>My test dataset is this:</p>
  
  <pre><code>test_pair = data.frame(pair_number = c(1, 1, 2, 2, 3, 3, 3), 
                         color = c('#5f75e6', '#e6d05f', '#5f75e6', '#5fb9e6', '#5f75e6', '#b9e65f', '#e68d5f'),
                         group = c('target', 'comp', 'target', 'comp', 'target', 'comp', 'comp'),
                         bin_width = c(1, 1, 1, 1, 1, 0.5, 0.5))
  </code></pre>
  
  <p>And my plot code:</p>
  
  <pre><code>ggplot(test_pair, aes(x = factor(group), y = factor(pair_number), width = bin_width)) +
         geom_tile(aes(fill = color)) +
         scale_fill_identity() +
         scale_x_discrete('', expand = c(0, 0)) +
         scale_y_discrete('', expand = c(0, 0)) + 
         theme_bw() +
         theme(line = element_blank(),
              panel.grid.major = element_blank(),
              panel.grid.minor = element_blank(),
              panel.border = element_blank(),
              plot.background = element_rect(fill = '#c4a879'),
              axis.ticks = element_blank(),
              axis.text.y = element_text(size = 14),
              axis.text.x = element_text(size = 14),
              axis.title.y = element_text(color = hex))
  </code></pre>
  
  <p>The plot does split one of the complement colors in half, but centers that tile and does not plot the second complement color.  I want the plot to print the two complements side by side without having to specify break-points along x like in the <a href="http://docs.ggplot2.org/current/geom_tile.html" rel="noreferrer">geom_tile documentation</a>.  Anyone know how to do this?</p>
  
  <p><img src="https://i.stack.imgur.com/yUFcN.png" alt="ggplot with geom_tile not behaving as desired."></p>