title: How to use d3.domain/range to have a custom domain
body: <p>I'm currently using the whole idea of </p>
  
  <pre><code>var myQuantizeFunction = d3.scale.quantize()
                                   .domain(minMaxFromData) // the minmax using d3.extent
                                   .range(['bla-1', 'bla-2', 'bla-3', 'bla-4', 'bla-5']);
  </code></pre>
  
  <p>So this works fine when you want to generate a legend across your min-max. The issue is, I have some data which comes back as 0. </p>
  
  <p>Here is an example legend for context : </p>
  
  <p><img src="https://i.stack.imgur.com/684hG.png" alt="legend image"></p>
  
  <p>As you can see, it's first or lowest value from the range is 0 - 4.7, what I want to really do is have 0 (ie none) as it's own legend item and have everything above ie 1 - 33 in this case as the other ranges.</p>
  
  <p>I want to be able to specify that the first range is 0 and then the domain is split equally between values > 0.</p>
  
  <p>Is there a d3 way of doing this? I'm sure someone else must have had this same problem before, I can't seem to find it but I may not be using the right search terms.</p>