Poor scatterplot performance in pyqtgraph: Moving to bokeh until vispy (openGL) is integrated into pyqtgraph

116 views
Skip to first unread message

Mark

unread,
Mar 19, 2017, 12:54:35 PM3/19/17
to pyqtgraph
Hi Luke - 

I'm using pyqtgraph

I went from using the standard line plot::
  curve = p5.plot()

to the symbol or scatterplot type:
curve = p5.plot(pen=None,symbol='o', symbolBrush=(32,178,170),symbolSize=3)
 
I have a real-time charting app pulling in data from a mongo collection. At the end of the week, I can store up to 60,000 data points in mongo for one chart!

I notice a performance drop as the collection size gets bigger using the standard plot - loading in data from the end of the collection takes longer - but is reasonable. 
However, when I load data from the collection using the symbol arguments, I can not have a collection > 35,000 data points as load times take > 30 seconds for every 2000 data points! It is really becomes unusable.

I took alook at Vispy - and it looks really promising, but I don't want to spend months learning the GLSL language plus alot of the VISPY APIs look fairly ALPHA to me.

Therefore, I'm migrating to Bokeh until either VISPY is more mature with better interfaces for standard chart features and/or pyqtgraph is upgraded to support OPENGL.

Here is a screenshot of a sample chart that grinds.

Mark

scatterplot_sample.PNG
Reply all
Reply to author
Forward
0 new messages