code: def panset_pct(self, pct_x, pct_y):
          
          try:
              xy_mn, xy_mx = self.get_limits()
  
          except Exception as e:
              self.logger.error("Can't compute limits: %s" % (str(e)))
              return
  
          data_x = (xy_mn[0] + xy_mx[0]) * pct_x
          data_y = (xy_mn[1] + xy_mx[1]) * pct_y
  
          self.panset_xy(data_x, data_y)
docs: Similar to :meth:`set_pan`, except that pan positions
          are determined by multiplying data dimensions with the given
          scale factors, where 1 is 100%.