2015-01-13 2 views
5

나는 점성술 플롯 (Vispy SceneCanvas)을 QWidget으로 PyQt4에 삽입하려고합니다. 나는이 마지막 줄을하려고 할 때VisQ 그래프를 PyQt에 내장하는 방법은 무엇입니까?

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) 

그러나 나에게 vispyCanvas이 SceneCanvas를 입력하지 유형 QWidget의 것으로 예상되는 오류가 있습니다 : 나는 대답이 같은 것 추정한다. 내가 print(vispyCanvas) 일 때 <Vispy canvas (PyQt4 (qt) backend) at 0x142bcb00L>을 출력하기 때문에 QWidget 객체로 처리하거나 속성 중 하나를 처리 할 수 ​​있어야합니다.

답변

9

대답은 간단

win.setCentralWidget(vispyCanvas.native) 

만큼 다음 Canvas.native는 기본 QGLWidget 지칭 vispy 해당 백엔드로 Qt를 사용하고있다.