首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在PyQt5应用程序上巧妙地显示图形

如何在PyQt5应用程序上巧妙地显示图形
EN

Stack Overflow用户
提问于 2022-11-01 15:28:36
回答 1查看 34关注 0票数 0

我试图在应用程序的一个窗口中显示图形。

但是,当窗口发生变化时,此图表不会缩放。

我怎么才能修好它?

这里是课堂主窗口的开始。

代码语言:javascript
运行
复制
class MainWindow(QWidget, From_Main):
    def __init__(self):
        super(MainWindow, self).__init__()
        QWidget.__init__(self)
        self.setupUi(self)
        
        self.browser = QtWebEngineWidgets.QWebEngineView(self)
        
        vlayout = QtWidgets.QVBoxLayout(self)
        vlayout.addWidget(self.BtnDescribe, alignment=QtCore.Qt.AlignHCenter)
        self.browser.setGeometry(QtCore.QRect(730, 170, 444, 596))

这是def绘图仪,它创建了我的情节

代码语言:javascript
运行
复制
    def plotter(self):
        df_period = self.all_data.loc[:len(self.all_data)-13]
        df_predict = self.all_data.loc[len(self.all_data)-12:]
        fig = go.Figure()
        fig.add_trace(go.Scatter(x=df_period.index, y=df_period['value'], mode='lines', name='value'))
        fig.add_trace(go.Scatter(x=df_predict.index, y=df_predict['value'], mode='lines', opacity=0.7, name='value_true'))
        fig.add_trace(go.Scatter(x=df_predict.index, y=df_predict['value_predict'], mode='lines',  name='value_predict'))
        self.browser.setHtml(fig.to_html(include_plotlyjs='cdn'))

我试着绘制自动缩放的图形,但是失败了。

我希望有能自动缩放图形的代码

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-11-01 15:41:36

您已经有了一个布局,您不能设置一个新的布局;相反,您需要将视图添加到其中。

转到Designer,选择要在其中添加浏览器的父小部件,如果它已经具有可以添加视图的现有布局,则向下滚动到属性编辑器的末尾并获取其layoutName

最后,在代码中使用self.<layout name>.addWidget(self.browser)

如果是网格布局,则需要检查要添加视图的单元格位置的实际行和列。最后,您可以通过从小部件框中拖动子布局作为“占位符”来添加子布局;在这种情况下,新布局将是将视图添加到的布局。

请注意,如果无法从设计器中添加QWebEngineView,则始终可以将QWidget添加为占位符,然后进行推广。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74278200

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档