(function () {
  var QuadraticDrawing = {

    height : null,
    width : null,
    rendered : false,

    render : function (node) {
      var
        canvas = document.createElement('canvas'),//bonzo.create('<canvas></canvas>')[0],
        offset = bonzo(node).offset();

      this.height = offset.height;
      this.width = offset.width;

      bonzo(canvas)
        .attr('height', offset.height)
        .attr('width', offset.width)
        .css({
          position : 'absolute',
          top : '0px',
          left : '0px'
        });

      node.appendChild(canvas);
      bonzo(node).css({
        position : 'relative'
      });

      if (typeof FlashCanvas !== 'undefined') FlashCanvas.initElement(canvas);
      this.context = canvas.getContext('2d');
      this.rendered = true;
    },

    draw : function (data, options, node) {

      if (!this.rendered) this.render(node);
      options = options || {};

      var
        context = this.context,
        height = this.height,
        width = this.width,
        half = Math.round(height / 2) - .5,
        min = options.min ? options.min + 0.5 : width / 2,
        max = options.max ? options.max + 0.5 : width / 2;

      function left () {
      }

      function right () {
      }

      context.clearRect(0, 0, width, height);
      if (min || max) {
        context.save();
        context.strokeStyle = '#B6D9FF';
        context.fillOpacity = .5;
        context.fillStyle = 'rgba(182, 217, 255, .4)';
        context.beginPath();

        // Left
        if (min <= 1) {
          context.moveTo(0, height);
          context.lineTo(0, -0.5);
        } else {
          context.moveTo(min, height);
          context.quadraticCurveTo(min, half, Math.max(min - half, min / 2), half);
          context.lineTo(Math.min(half, min / 2), half);
          context.quadraticCurveTo(0, half, 0, -0.5);
        }

        // Top
        context.lineTo(width, -0.5);

        // Right
        if (max >= width - 1) {
          context.lineTo(max, height);
        } else {
          context.quadraticCurveTo(width, half, Math.max(width - half, width - (width - max) / 2), half);
          context.lineTo(Math.min(max + half, width - (width - max) / 2), half);
          context.quadraticCurveTo(max, half, max, height);
        }

        context.stroke();
        context.closePath();
        context.fill();
        context.restore();
      }
    },
    trigger : function (child, name, options) {
      if (name === 'zoom') {
        this.zoom(child, options);
      } else if (name === 'click') {
        this.click(child);
      }
    },
    zoom : function (child, options) {
      var
        x = options.x || {},
        min = x.min,
        max = x.max,
        api = child.api;

      child.draw(null, {
        min : min,
        max : max
      });
    },
    click : function (child) {
      child.draw(null, {
        min : child.width / 2,
        max : child.width / 2
      });
    }
  };
  humblevis.QuadraticDrawing = QuadraticDrawing;
})();

@@ -890,39 +890,8 @@
 de);
-%0A      options = options %7C%7C %7B%7D;
 %0A%0A  
@@ -1043,26 +1043,37 @@
      min
+, max;%0A%0A    
  
-=
  options
 .min ? o
@@ -1068,22 +1068,18 @@
 ions
-.min ?
+ =
  options
 .min
@@ -1078,18 +1078,17 @@
 ions
-.min + 0.5
+ %7C%7C %7B min
  : w
@@ -1100,54 +1100,12 @@
 / 2,
-%0A        max = options.max ? options.max + 0.5
+ max
  : w
@@ -1112,16 +1112,17 @@
 idth / 2
+%7D
 ;%0A%0A     
@@ -1126,69 +1126,63 @@
     
-function left () %7B%0A      %7D%0A%0A      function right () %7B%0A      %7D
+min = options.min + 0.5;%0A      max = options.max + 0.5;
 %0A%0A  

Fix defaults.