Registry / data / pyqtgraph

pyqtgraph

JSON →
library0.14.0pypypi✓ verified 24d ago

PyQtGraph is an open-source Python library for scientific graphics and GUI development, built on top of Qt and NumPy. It provides fast, interactive plotting for large datasets, signal/image processing, and sophisticated GUI elements, making it ideal for scientific and engineering applications. The current version is 0.14.0, and it maintains a relatively active release cadence with several minor and patch releases per year.

pip install pyqtgraph
INSTALL
IMPORT
SIG · PYQTGRAPH
P
pyqtgraph
datapythonv0.14.0
Install
4.1s avg
Import
Disk
98MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v0.14.0 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.103.925 runs
installs and imports cleanly · install 0.0s · import 0.000s · 97.5MB
glibc
py 3.103.925 runs
installs and imports cleanly · install 4.1s · import 0.000s · 94MB
98MB installed
● package 98MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

pyqtgraph
import pyqtgraph as pg
import pyqtgraph as pg

This quickstart demonstrates how to create a basic line plot using PyQtGraph. It sets up a QApplication, creates a `GraphicsLayoutWidget` as the main window, adds a plot item, and plots a simple list of data. Crucially, it uses `pg.mkQApp` for application initialization and `app.exec_()` to start the Qt event loop, allowing the GUI to run.

import pyqtgraph as pg from pyqtgraph.Qt import QtWidgets # Always start by creating a QApplication app = pg.mkQApp("PyQtGraph Quickstart") # Create a GraphicsLayoutWidget (a window to hold plots) win = pg.GraphicsLayoutWidget(show=True, title="Basic Plot") win.resize(800, 500) win.setWindowTitle('PyQtGraph Quickstart Example') # Enable antialiasing for prettier plots pg.setConfigOptions(antialias=True) # Add a plot item to the window p = win.addPlot(title="Simple Line Plot") # Generate some data data = [1, 5, 2, 4, 3, 8, 9, 1, 2, 3, 5] # Plot the data p.plot(data) # Start the Qt event loop if running as a script if __name__ == '__main__': QtWidgets.QApplication.instance().exec_()
Debug
Known issues
breakingThe classes `MetaArray`, `MultiPlotItem`, and `MultiPlotWidget` have been removed.
fix
Review your code for usage of these deprecated classes. For multi-plotting, consider using `GraphicsLayoutWidget` with multiple `PlotItem` instances or alternative approaches.
affects: 0.14.0
breakingSupport for Python 3.8 and NumPy 1.20 has been dropped.
fix
Upgrade your Python environment to 3.9 or higher and NumPy to version 1.21 or higher to ensure compatibility.
affects: 0.13.4 and later
breakingMinimum supported Qt versions have been increased to Qt5 5.15 and Qt6 6.2+.
fix
Ensure your installed Qt binding (PyQt5, PyQt6, PySide2, or PySide6) meets these minimum version requirements. Upgrade your Qt binding if necessary.
affects: 0.13.0 and later
deprecatedThe `GraphicsObject::parentChanged` method has been deprecated.
fix
Avoid using `GraphicsObject::parentChanged`. Look for alternative signals or methods if you were relying on this for parent change detection.
affects: 0.13.1 and later
gotchaForgetting to start the Qt event loop or calling `QApplication.exec_()` (or `exec()`) can lead to the GUI window appearing briefly and then closing, or not appearing at all.
fix
Always include `app.exec_()` (or `app.exec()` on some platforms/Qt versions) at the end of your script after setting up your GUI, typically guarded by `if __name__ == '__main__':`.
affects: All versions
Upgrade
Version history
0.14.0latest on PyPI · released Nov 16, 2025
Audit
Dependencies
numpyrequiredRequired for numerical operations and data handling.
PyQt5 / PyQt6 / PySide2 / PySide6optionalOne of these Qt bindings is required for the graphical user interface components to function.
Agent activity
16 hits · last 30 days
node
10
OpenAI (training)
1
Resources