Matplotlib NavigationToolbar2QT 仅显示禁用的左右箭头。如何显示缩放和平移按钮?
Posted
技术标签:
【中文标题】Matplotlib NavigationToolbar2QT 仅显示禁用的左右箭头。如何显示缩放和平移按钮?【英文标题】:Matplotlib NavigationToolbar2QT shows only disabled left and right arrows. How to display Zoom and Pan buttons? 【发布时间】:2020-01-25 19:56:31 【问题描述】:我正在使用 matplotlib 和 PySide2(但我是新手)来绘制嵌入在 QWidget 中的图表。我希望图表有一个带有缩放和平移按钮的 NavigationToolbar2QT。但我只在 NavigationToolBar 中禁用了左右箭头按钮。以下是我的代码的相关部分:
from PySide2.QtWidgets import QWidget, QVBoxLayout
from matplotlib.backends.backend_qt5agg import NavigationToolbar2QT as NavigationToolbar
class ChartWidget(QWidget):
def __init__(self, algo_index, *args, **kwargs):
QWidget.__init__(self, *args, **kwargs)
self.setLayout(QVBoxLayout())
self.canvas = AlgoCanvas.get_plot_canvas(algo_index, self)
self.toolbar = NavigationToolbar(self.canvas, self)
self.layout().addWidget(self.toolbar)
self.layout().addWidget(self.canvas)
这是我得到的结果:
如何才能在 NavigationToolbar2QT 上获得缩放和平移按钮?任何帮助将不胜感激?
提前致谢。
【问题讨论】:
@eyllanesc 我认为我的示例是最小且可重复的(根据您提供的链接)。您能否详细说明您认为其中缺少什么? 您的代码很少但不可重现。 MRE的逻辑是其他用户可以通过复制粘贴来重现你的问题,显然有很多代码没有定义为“something_index”、“AlgoCanvas” 我想按钮在那里,只是不可见,因为黑色背景上的黑色按钮使一切变黑。 例如,使用the official matplotlib example for Qt中的代码+您的不完整代码,我得到以下内容:i.imgur.com/BxRRurT.png @ImportanceOfBeingErnest 是的!这就是问题所在。按钮被黑色背景隐藏。感谢 v.much 的指针 【参考方案1】:解决了!按钮在那里,但由于黑色背景而不可见。
感谢 v.much @ImportanceOfBeingEarnest 提供指针。
【讨论】:
以上是关于Matplotlib NavigationToolbar2QT 仅显示禁用的左右箭头。如何显示缩放和平移按钮?的主要内容,如果未能解决你的问题,请参考以下文章