PyQt4关闭窗口前是否可以预览绘图?

2024-03-29 13:50:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我的程序要求各种输入,并为用户保存相应的绘图。我希望能够有一个“预览”选项,如果他们按下“预览”,它将实现这些选项,并且他们可以在点击生成他们请求的.jpg的“完成”按钮之前看到绘图。理想情况下,我希望他们能够点击“预览”,对输入进行调整,然后再次点击“预览”,看看这是否是他们想要的样子

我添加了一个“预览”按钮,但它似乎不起作用-然后我关闭了主窗口,它确实显示了绘图

以下是我的“预览”和“完成”按钮的代码:

def preview(self):
    self.final = False
    self.id = str(self.identifier_ask.text())
    self.limits = [float(self.vel_low_ask.text()), float(self.vel_high_ask.text())]
    if self.flip_bool_ask.isChecked():
        self.flip = True
    else:
        self.flip = False


def finish_input_click(self):
    self.final = True
    self.id = str(self.identifier_ask.text())
    self.limits = [float(self.vel_low_ask.text()), float(self.vel_high_ask.text())]
    if self.flip_bool_ask.isChecked():
        self.flip = True
    else:
        self.flip = False

    self.close()

下面是我的绘图功能中的代码:

if cw.final:
    figure_path = pathname + 'velocity ' + cw.id + '.jpg'
    fig.savefig(figure_path, dpi = 200)
    plt.close()
else:
    plt.show()

有没有一种方法可以实现我想要的功能,而不必在编译的窗口类中复制绘图函数


Tags: textselfidfalsetrue绘图if选项
1条回答
网友
1楼 · 发布于 2024-03-29 13:50:01

在您的“预览”代码中,您似乎没有调用绘图进入视图,只是给您的类一个标志。所以我猜,当你关闭窗口时,你调用plot函数,标志说它应该给出一个plot

由于您使用的是matplotlib,因此我建议您创建绘图的第二个实例,这样一旦用户关闭绘图,您就不会丢失以前设置的信息。因此,在预览功能中,您还应该制作一个绘图(就像您在软件中所做的绘图的副本)

相关问题 更多 >