Example #1
0
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()