docs: def zoom(self, event=None, scale=2.0):
          """Zoom in"""
  
          # compute the x,y of the center of the screen
          sx1 = (self.cx1 + self.cx2) / 2.0
          sy1 = (self.cy1 + self.cy2) / 2.0
  
          if not event is None:
              logging.debug("EVENT: {},{}".format(event.x, event.y))
              sx1 = event.x
              sy1 = event.y
  
          (x, y) = self.c2p((self.canvasx(sx1), self.canvasy(sy1)))
          xw = (self.x2 - self.x1) / 2.0 / scale
          yw = (self.y2 - self.y1) / 2.0 / scale
  
          # reset the limits to be centered at x,y with
          # area of xw*2,y2*2
          self.limits(x - xw, x + xw, y - yw, y + yw)
  
          self.delete(ALL)
          self.doplot()