| | |
| | | fig = Figure(figsize=(width, height), dpi=dpi) |
| | | self.axes = fig.add_subplot(111) |
| | | super(PlotCanvas, self).__init__(fig) |
| | | self.left = 0.0 |
| | | self.right = 0.0 |
| | | |
| | | |
| | | class MainWindow(QMainWindow): |
| | |
| | | if epsilon is not None and len(epsilon.strip()) > 0: |
| | | eps = parse_value(epsilon) |
| | | print(f"plot f(x) = {fn_expr}, {a}, {b}, epsilon = {eps}") |
| | | (self.x, self.y, *_) = numint_epsilon(f, a, b, eps) |
| | | (self.x, self.y, self.left, self.right, self.num_of_iterations, *_) = numint_epsilon(f, a, b, eps) |
| | | self._update_plot_eps() |
| | | else: |
| | | section = self.ui.section.text() |
| | | sec = parse_value(section) |
| | | print(f"plot f(x) = {fn_expr}, {a}, {b}, section = {sec}") |
| | | (self.x, self.y, *_) = numint_section(f, a, b, sec) |
| | | (self.x, self.y, self.left, self.right, self.num_of_iterations, *_) = numint_section(f, a, b, sec) |
| | | self._update_plot_eps() |
| | | except Exception as ex: |
| | | print(ex) |
| | |
| | | self.canvas.axes.cla() # Clear the canvas. |
| | | # self.canvas.axes.stairs(self.y[1:], self.x, baseline=0, fill=True, alpha=0.5, label=self.fn_expr) |
| | | # self.canvas.axes.stairs(self.y[0:-1], self.x, baseline=0, fill=True, alpha=0.5, label=self.fn_expr) |
| | | self.canvas.axes.step(self.x, self.y, color="blue", where="pre", label=self.fn_expr) |
| | | self.canvas.axes.step(self.x, self.y, color="orange", where="post", label=self.fn_expr) |
| | | self.canvas.axes.step(self.x, self.y, color="blue", where="pre", label="right") |
| | | self.canvas.axes.step(self.x, self.y, color="orange", where="post", label="left") |
| | | |
| | | self.canvas.axes.plot(self.x, self.y, color="black") |
| | | self.canvas.axes.plot(self.x, self.y, color="black", label=self.fn_expr) |
| | | self.canvas.draw() |
| | | |
| | | self.ui.leftSum.setText(f"{self.left}") |
| | | self.ui.rightSum.setText(f"{self.right}") |
| | | self.ui.numOfSections.setText(f"{self.num_of_iterations}") |
| | | |
| | | |
| | | def main(): |
| | | app = QApplication(sys.argv) |