code: function HoverRect(container, options) {
      this.width = options.width;
      this.height = options.height;
      this.padding = options.padding || {
          top : 0,
          bottom : 0,
          left : 0,
          right : 0
      };
      
      // Create an invisible rectangle to grab mouse events
      this.hover_rect = d3.select(container).append('rect', ':first-child')
          .style('fill', 'none')
          .style('pointer-events', 'all');
  
      this.resize();
  
      this._setupEvents();
  }
docs: Creates a hoverable area which will trigger mouseover, mouseout, mousemove, and click events.
  The area has a base width and height and can be extended using padding (via the extendPadding() method).
  @param {[type]} el      [description]
  @param {[type]} options [description]