def _demo_ModelChooser(): import sys import numpy import pyqtgraph as pg from taurus.qt.qtgui.tpg import TaurusModelChooserTool from taurus.qt.qtgui.application import TaurusApplication from taurus.qt.qtgui.tpg import TaurusPlotDataItem app = TaurusApplication() # a standard pyqtgraph plot_item w = pg.PlotWidget() # add legend to the plot, for that we have to give a name to plot items w.addLegend() # adding a regular data item (non-taurus) c1 = pg.PlotDataItem(name="st plot", pen="b", fillLevel=0, brush="c") c1.setData(numpy.arange(300) / 300.0) w.addItem(c1) # adding a taurus data item c2 = TaurusPlotDataItem(name="st2 plot", pen="r", symbol="o") c2.setModel("eval:rand(222)") w.addItem(c2) # attach to plot item tool = TaurusModelChooserTool(itemClass=TaurusPlotDataItem) tool.attachToPlotItem(w.getPlotItem()) w.show() tool.trigger() sys.exit(app.exec_())
# c2.loadConfigFile('tmp/conf.cfg') c2.setModel('eval:Quantity(rand(256),"m")') # c2.setModel('sys/tg_test/1/wave') # c2.setModel(None) # c2.setXModel(None) # c2.setXModel('eval:Quantity(rand(256),"m")') w.addItem(c2) # ...and remove it after a while def rem(): w.removeItem(c2) Qt.QTimer.singleShot(2000, rem) modelchooser = TaurusModelChooserTool(itemClass=TaurusPlotDataItem) modelchooser.attachToPlotItem(w.getPlotItem()) w.show() res = app.exec_() # config = c2.createConfig() # print config # c2.saveConfigFile('tmp/conf.cfg') sys.exit(res)