Ejemplo n.º 1
0
    def make_plot(self, multiple=False):
        """
        draws the plots
        """
        # legend setup
        if self.LegendCB.isChecked():
            legend = 'Replicate ' if self.alldata.is_single() else 'Set '
        else:
            legend = ''
        self.multi_cach = multiple

        self.fig.clear()
        self.axes = self.fig.add_subplot(121)
        self.axes2 = self.fig.add_subplot(122)
        a_isvar = False if self.SetCB.currentIndex() == 1 else True
        if self.alldata.is_single():
            # reaction plot
            reaction_plots.plot_singlegraph(self.data, self.axes, signal=self.PlotCB.currentIndex(),
                                            equation=self.equation, legend=legend)

            # residuals plot
            reaction_plots.plot_res(self.alldata, self.axes2, equation=self.equation, a_isvar=a_isvar)

        # plot for DS data
        else:
            ebars = True if self.ErrCB.currentIndex() == 1 else False
            # plot when finding fits
            if multiple:
                reaction_plots.plot_dsegraph(self.alldata, self.axes, signal=self.PlotCB.currentIndex(),
                                             equations=[eq.function for eq in self.set_equations],
                                             a_isvar=a_isvar, legend=legend, pick=self.EncCB.currentIndex() - 1,
                                             errors=ebars)
                reaction_plots.plot_res(self.alldata, self.axes2, equations=[eq.function for eq in self.set_equations],
                                        a_isvar=a_isvar, pick=self.EncCB.currentIndex() - 1)
            # plot when adusting values
            else:
                reaction_plots.plot_dsegraph(self.alldata, self.axes, signal=self.PlotCB.currentIndex(),
                                             equation=self.equation, a_isvar=a_isvar, legend=legend,
                                             pick=self.EncCB.currentIndex() - 1, errors=ebars)
                reaction_plots.plot_res(self.alldata, self.axes2, equation=self.equation, a_isvar=a_isvar,
                                        pick=self.EncCB.currentIndex() - 1)
        self.canvas.draw()
Ejemplo n.º 2
0
    def plot_basicgraphs2(self):
        """
        Plotting for two substrates examples!
        """

        self.Graph1Sel.show()
        self.fig.clear()

        repfit1 = 1 if self.RepLin1.isChecked() else 2 if self.RepParab1.isChecked() else 0
        repfit2 = 1 if self.RepLin2.isChecked() else 2 if self.RepParab2.isChecked() else 0
        globfit1 = 1 if self.GlobLin1.isChecked() else 2 if self.GlobParab1.isChecked() else 0
        globfit2 = 1 if self.GlobLin2.isChecked() else 2 if self.GlobParab2.isChecked() else 0

        self.axes = self.fig.add_subplot(121)
        self.axes2 = self.fig.add_subplot(122)
        reaction_plots.plot_singlegraph(
            self.reaction_data.get_repres(True),
            self.axes,
            self.Graph1Sel.currentIndex(),
            legend="Set " if self.Leg1Box.isChecked() else "",
            rep_fit=repfit1,
            global_fit=globfit1,
            sname=self.reaction_data.nameA,
            extrapolation=self.Extrap1.value(),
        )

        reaction_plots.plot_singlegraph(
            self.reaction_data.get_repres(False),
            self.axes2,
            self.Graph1Sel.currentIndex(),
            legend="Set " if self.Leg1Box.isChecked() else "",
            rep_fit=repfit2,
            global_fit=globfit2,
            sname=self.reaction_data.nameB,
            extrapolation=self.Extrap2.value(),
        )

        # Draw the plots
        self.canvas.draw()
        self.canvas.show()
        self.mpl_toolbar.show()
Ejemplo n.º 3
0
    def plot_basicgraphs(self):
        """
        Plots the graphs to be displayed in main window.
        """
        self.fig.clear()

        self.axes = self.fig.add_subplot(121)
        self.axes2 = self.fig.add_subplot(122)

        repfit1 = 1 if self.RepLin1.isChecked() else 2 if self.RepParab1.isChecked() else 0
        repfit2 = 1 if self.RepLin2.isChecked() else 2 if self.RepParab2.isChecked() else 0
        globfit1 = 1 if self.GlobLin1.isChecked() else 2 if self.GlobParab1.isChecked() else 0
        globfit2 = 1 if self.GlobLin2.isChecked() else 2 if self.GlobParab2.isChecked() else 0

        reaction_plots.plot_singlegraph(
            self.reaction_data,
            self.axes,
            self.Graph1Sel.currentIndex(),
            legend="Replicate " if self.Leg1Box.isChecked() else "",
            rep_fit=repfit1,
            global_fit=globfit1,
            extrapolation=self.Extrap1.value(),
        )
        reaction_plots.plot_singlegraph(
            self.reaction_data,
            self.axes2,
            self.Graph2Sel.currentIndex(),
            legend="Replicate " if self.Leg2Box.isChecked() else "",
            rep_fit=repfit2,
            global_fit=globfit2,
            extrapolation=self.Extrap2.value(),
        )

        # New options
        self.Graph1Sel.show()
        self.Graph2Sel.show()

        # Draw the plots
        self.canvas.draw()
        self.canvas.show()
        self.mpl_toolbar.show()
Ejemplo n.º 4
0
    def draw_plots(self):
        """
        Draw or re-draw plots
        """
        self.fig.clear()
        if self.reac_data.is_single():
            self.axes = self.fig.add_subplot(111)
            # Graph plot
            reaction_plots.plot_singlegraph(self.reac_data, self.axes, 0, pick=self.RepBox.currentIndex())
            self.canvas.draw()
            self.canvas.show()

        else:
            self.axes = self.fig.add_subplot(121)
            self.axes2 = self.fig.add_subplot(122)

            picks = self.select_rep()
            reaction_plots.plot_singlegraph(self.reac_data.get_repres(True), self.axes, 0, pick=picks[0], alpha1=0.75)
            reaction_plots.plot_singlegraph(self.reac_data.get_repres(False), self.axes2, 0, pick=picks[1], alpha1=0.75)

            # enhance single point
            sub_group = True if self.VarBox.currentIndex() == 0 else False
            plot_obj = self.axes if sub_group else self.axes2
            dat_set = self.SetBox.currentIndex()
            dat_rep = self.RepBox.currentIndex()
            # plot if possible
            try:
                plot_obj.plot(self.reac_data.AllVar[sub_group][dat_set][dat_rep],
                              self.reac_data.AllRates[sub_group][dat_set][dat_rep], 'o', color='red')
            except IndexError:
                pass
            self.canvas.draw()
            self.canvas.show()