pyqtgraph/examples/RemoteGraphicsView.py

35 lines
1.3 KiB
Python
Raw Permalink Normal View History

# -*- coding: utf-8 -*-
2013-02-25 04:09:03 +00:00
"""
2013-04-07 20:18:58 +00:00
Very simple example demonstrating RemoteGraphicsView.
This allows graphics to be rendered in a child process and displayed in the
parent, which can improve CPU usage on multi-core processors.
2013-02-25 04:09:03 +00:00
"""
import initExample ## Add path to library (just for examples; you do not need this)
2013-04-07 20:18:58 +00:00
from pyqtgraph.Qt import QtGui, QtCore
import pyqtgraph as pg
2013-02-25 04:09:03 +00:00
from pyqtgraph.widgets.RemoteGraphicsView import RemoteGraphicsView
app = pg.mkQApp()
2013-04-07 20:18:58 +00:00
## Create the widget
v = RemoteGraphicsView(debug=False) # setting debug=True causes both processes to print information
# about interprocess communication
v.show()
2013-02-25 04:09:03 +00:00
v.setWindowTitle('pyqtgraph example: RemoteGraphicsView')
2013-02-25 04:09:03 +00:00
## v.pg is a proxy to the remote process' pyqtgraph module. All attribute
## requests and function calls made with this object are forwarded to the
2013-04-07 20:18:58 +00:00
## remote process and executed there. See pyqtgraph.multiprocess.remoteproxy
## for more inormation.
plt = v.pg.PlotItem()
v.setCentralItem(plt)
plt.plot([1,4,2,3,6,2,3,4,2,3], pen='g')
## Start Qt event loop unless running in interactive mode or using pyside.
if __name__ == '__main__':
import sys
if (sys.flags.interactive != 1) or not hasattr(QtCore, 'PYQT_VERSION'):
QtGui.QApplication.instance().exec_()