Kyl*_*sen 5 python plot pyqt4 pyside vispy
我试图将一个vispy情节(更具体地说,一个Vispy SceneCanvas)作为QWidget嵌入到PyQt4中.我认为答案是这样的:
from PyQt4.QtCore import *
from PyQt4.QtGui import *
import vispy.mpl_plot as plt
app = QApplication(sys.argv)
win = QMainWindow()
plt.plot([1,2,3,4], [1,4,9,16])
vispyCanvas=plt.show()[0]
win.setCentralWidget(vispyCanvas)
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试这个时,最后一行给出了vispyCanvas类型SceneCanvas而不是类型的预期错误QWidget.当我print(vispyCanvas),它打印出来<Vispy canvas (PyQt4 (qt) backend) at 0x142bcb00L>,这就是为什么我怀疑应该可以将它或它的一个属性作为QWidget对象处理.
Luk*_*uke 11
答案很简单:
win.setCentralWidget(vispyCanvas.native)
Run Code Online (Sandbox Code Playgroud)
只要vispy使用Qt作为其后端,则Canvas.native指的是底层QGLWidget.
| 归档时间: |
|
| 查看次数: |
3583 次 |
| 最近记录: |