       for i in [0..labels.length-1]
         if not labels[i]?
           continue
-        w = @plot_view.ctx.measureText(labels[i]).width * 1.3 # height overestimates, compensate
-        h = @plot_view.ctx.measureText(labels[i]).ascent
+        w = @plot_view.ctx.measureText(labels[i]).width * 1.1
+        h = @plot_view.ctx.measureText(labels[i]).ascent * 0.9
         val = w*s + (h/factor)*c
         if val > extent
           extent = val


    angle = _angle_lookup[side][orient]
    standoff = @_tick_extent() + @_tick_label_extent() + @mget('axis_label_standoff')
    sx = (sx[0] + sx[sx.length-1])/2
    sy = (sy[0] + sy[sy.length-1])/2


    if @mget('axis_label')
      extent += @mget('axis_label_standoff')
      @axis_label_props.set(@plot_view.ctx, @)
      w = @plot_view.ctx.measureText(@mget('axis_label')).width * 1.1
      h = @plot_view.ctx.measureText(@mget('axis_label')).ascent * 0.9
      if side == "top" or side == "bottom"
        extent += w*s + h*c
      else
        extent += w*c + h*s

    return extent

  _padding_request: () ->
    req = {}
