Hey folks,
We just released PyQtGraph 0.12.4. This release includes two of the most requested features
- Remain performant when drawing thick (> 1 pixel) lines
- Jupyter support
The jupyter support is enabled with the use of jupyter_rfb plugin, which is maintained by the VisPy team. We had some help from them with integrating their plugin with PyQtGraph and we're quite thankful!
In the performance improvement category, PColorMesh received a substantial performance improvement. We can now draw lines > 1 pixel at appropriate frame rates. The thick line performance hit is a bit hard to quantify. If the line thickness is > 5 pixels, we mandate the use of a round end-cap to the QPen, which results in a greater performance penalty. We have modified the PlotSpeedTest example to use a parameter tree so you can tinker with the QPen options there and see how performance is affected. The other substantial performance improvement we made is the drawing of lines, with connect='all' when there is the presence of NaN values in the numpy array.
In terms of bug fixes, there are too many to count, but the big ones are we now have a work-around a new issue in PySide6 6.2.2, we have Python 3.10 support, and have fixed cases where some of the examples would have import errors.
There were a number of changes in the code-base that should be invisible to end-users, but are significant enough I feel should be worth mentioning. PyQtGraph has removed unused imports throughout the entire codebase, and we've run isort over the entire codebase as well. These are some of the first steps in upping the code-quality, and we'll be taking more steps to this effect.
Lastly, if you are interested in helping maintain pyqtgraph, and have a history of contributing to the project, please reach out to me. We can use more help. We don't expect maintainers to know the ins and outs of all portions of the library, there is room for help in many many areas.
Thanks!
Ogi