【发布时间】:2020-10-22 17:10:21
【问题描述】:
我的问题很简单但是找不到答案,大家可以帮帮我吗?
请
问题在python GUI pyqt5,我想用matplotlib画3d轴,我找到函数matplotlib.pyplot,mpl_toolkits.mplot3d可以做的很好,但是pyqt5只能用函数matplotlib.figure使用 matplotlib.backends.backend_qt5agg。
然后:
在我的概念中,matplotlib.backends.backend_qt5agg 只能用二维轴绘制,它不能旋转。
如何将 3d pyplot 轴放在 pyqt5 上?
我的例子是:
import matplotlib.pyplot as plt
from matplotlib.figure import Figure
from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FigureCanvas
def spRDM_frame(self):
fig = Figure()
# note spRDM_Widget is the widget object on qt designer.
self.ui.spRDM_Widget.canvas = FigureCanvas(fig)
self.ui.spRDM_Widget.canvas.axes = self.ui.spRDM_Widget.canvas.figure.add_subplot(1,1,1, projection='3d')
X = np.arange(-5, 5, 0.25)
Y = np.arange(-5, 5, 0.25)
X, Y = np.meshgrid(X, Y)
R = np.sqrt(X ** 2 + Y ** 2)
Z = np.sin(R)
self.ui.spRDM_Widget.canvas.axes.plot(X,Y,Z)
self.ui.spRDM_Widget.canvas.draw()
在示例中,不是我想要的。
如何更改 pyqt5 上的 pyplot 和设置。
非常感谢。
【问题讨论】:
标签: python matlab matplotlib pyqt5 qt-designer