class CutScreen(QWidget): def __init__(self, parent, xdata=[], ydata=[], xfit=[], yfit=[], sizex=100, sizey=100): QWidget.__init__(self, parent) self.sizex = sizex self.sizey = sizey #self.setMinimumSize(self.sizex,self.sizey) self.xdata = xdata self.ydata = ydata self.xfit = xfit self.yfit = yfit self.plot = None self.data_cut = None self.fit_cut = None self.setup_widget() def setup_widget(self): self.plot = CurvePlot(self) self.data_cut = make.curve(self.xdata, self.ydata, color="b") self.data_fit = make.curve(self.xfit, self.yfit, color="r") self.plot.add_item(self.data_cut) self.plot.add_item(self.data_fit) vlayout = QVBoxLayout() vlayout.addWidget(self.plot) self.setLayout(vlayout) def update_plot(self): self.data_cut.set_data(self.xdata, self.ydata) self.data_fit.set_data(self.xfit, self.yfit) self.plot.set_plot_limits(self.xdata.min(), self.xdata.max(), self.ydata.min(), self.ydata.max()) self.plot.replot()