A pure-Python graphics library for fast data visualization and GUI tools in scientific and engineering applications.
PyQtGraph is a pure-Python graphics library designed for fast data visualization and GUI development in scientific and engineering applications. It provides high-performance 2D and 3D plotting capabilities by leveraging NumPy for numerical computations and Qt's GraphicsView framework for display. The library solves the need for interactive, real-time data visualization in Python without sacrificing performance.
Scientists, engineers, and researchers who require interactive data visualization and GUI tools for mathematics, scientific computing, or engineering applications. It's also suitable for developers building data analysis tools in Python with Qt-based interfaces.
Developers choose PyQtGraph for its combination of Python simplicity with near-native performance, thanks to its integration with NumPy and OpenGL. It offers a specialized alternative to general-purpose plotting libraries by focusing on the needs of scientific computing, with support for multiple Qt backends and extensible functionality through optional scientific libraries.
Fast data visualization and GUI tools for scientific / engineering applications
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Leverages NumPy for efficient numerical computations, enabling fast 2D and 3D graphics in pure Python, as emphasized for mathematics and engineering applications.
Supports PyQt5, PyQt6, and PySide6, allowing developers to choose based on licensing and compatibility needs without being locked into a single toolkit.
Integrates optionally with libraries like SciPy for image processing and PyOpenGL for 3D graphics, enhancing utility in specialized scientific workflows.
Includes an extensive examples application launchable via `python -m pyqtgraph.examples`, providing hands-on experimentation and faster onboarding.
Requires specific Python (3.12+) and Qt (5.15 or 6.8+) versions, which can complicate deployment in environments with legacy or constrained setups.
Advanced capabilities like 3D graphics or Jupyter support depend on third-party libraries (e.g., PyOpenGL, jupyter_rfb), adding installation and maintenance overhead.
Designed specifically for scientific applications, so it may lack polish or features for general-purpose GUI development or non-numeric data visualization.