anchor.diff:    PlotWindow(this.canvas) {
       this.context = canvas.context2D;
       this.canvas.onMouseWheel.listen((WheelEvent e) {
  -      if(this._beingRendered) return;
  -      this._beingRendered=true;
  +      if(this.rendering) return;
  +      this.rendering=true;
         axes.values.forEach((Axis axis)=>axis.sizeFluid = false);
         this.clear();
         List<AxisType> axisTypes = new List<AxisType>();
  
positive.code:       }
        this.rectangle = _zoom(this.rectangle, (delta/500 +1), axisTypes, toRectangle(e.offset));
        this.plot();
        this._beingRendered=false;
      });
      this.canvas.onMouseDown.listen((var e) {
        this.mouseDrag = true;
  
negative.code: 
    bool mouseDrag = false;
    Point oldOffset;
    bool _rendering = false;
    bool get rendering=>_rendering;
    void set rendering(bool r) {
      print("setting rendering to $r");
      _rendering=r;
    }
    
    Map<String, Line> lines = new Map<String, Line>();
    Map<String, Line> smoothLines = new Map<String, Line>();
  