title: making square axes plot with log2 scales in matplotlib
body: <p>I'd like to make a square axis scatter plot with matplotlib. Normally using <code>set_scale("log")</code> works great, but it limits me to log10. I'd like to make the plot in log2. I saw the solution here: <a href="https://stackoverflow.com/questions/4899516/how-to-produce-an-exponentially-scaled-axis">How to produce an exponentially scaled axis?</a></p>
  
  <p>but it is quite complicated and does not work if you have 0 values in your arrays, which I do. I'd like to simply ignore those like other numpy functions do.</p>
  
  <p>For example:</p>
  
  <pre><code>log2scatter(data1, data2)
  </code></pre>
  
  <p>where data1 and data2 contain 0s should have a logarithmic scale on the x and y axis, with logarithmic spaced ticks. Just like log10, except log2...</p>
  
  <p>Thanks.</p>