code: def setXlimits(self, lims):
          
          # update all "linked", plots
          self.specPlot.setXlim(lims)
          for plot in self.responsePlots.values():
              plot.setXlim(lims)
          # ridiculous...
          sizes = self.splittersw.sizes()
          if len(sizes) > 1:
              if self.badbadbad:
                  sizes[0] +=1
                  sizes[1] -=1
              else:
                  sizes[0] -=1
                  sizes[1] +=1
              self.badbadbad = not self.badbadbad
              self.splittersw.setSizes(sizes)
  
          self._ignore_range_signal = False
docs: Sets the X axis limits of the trace plot
  
          :param lims: (min, max) of x axis, in same units as data
          :type lims: (float, float)