Skip to main content

Various extensions for pyqtgraph.

Project description

README

Various extensions for pyqtgraph.

Installing pyqtgraph_extensions creates two namespaces:

  • pyqtgraph_extensions - various classes and functions providing some of extra functionality for pyqtgraph
  • pyqtgraph_extended - a namespace merging pyqtgraph_extensions with the original pyqtgraph

In principle, it should be possible to import pyqtgraph_extended instead of pyqtgraph and have the same behaviour but with new functionality available. So the two options for using this repository are:

import pyqtgraph as pg
import pyqtgraph_extensions as pgx

or

import pyqtgraph_extended as pg

Installation

To get latest release from PyPi: pip install pyqtgraph_extensions.

Or install from GitHub: pip install git+https://github.com/draustin/pyqtgraph_extensions.

pyqtgraph_extensions is packaged using Poetry.

Python 3.6 or later is required.

Features

See pyqtgraph_extensions/examples for some examples.

Axis alignment across multiple plot items

The AlignedPlotItem is so-called because it uses its parent's graphics layout object for holding its constituent items (view box, axis items and title) rather than creating one internally. Its constituents can therefore be aligned with those of other items in the parent's graphics layout, including the constituent items of other AlignedPlotItem objects. Here's an example.

More axis controls

AxisItem is reimplemented with its own buttons for autoranging at the upper and lower limits.

Traditional interactive color bar

pyqtgraph_extensions adds a MATLAB-style ColorBarItem which can be linked to multiple ImageItems.

Other

  • Simplified exporting with the export function
  • Easy adding of a second vertical axis on the right hand side (with linked x axis), likewise for a second horizontal axis on the top. See example.
  • More GLGraphicsItems - see the unit tests.

Testing

I use pytest with pytest-qt during development work and tox to test installation & dependencies.

Plan / outlook

I developed the various features as needed and will continue on the same basis. When I began writing pyqtgraph_extensions I was just starting out with Python, Git/GitHub, and open source tools in general (I'm a convert from MATLAB).

I'd be happy for any/all features to be moved into pyqtgraph proper. Feel free to reach out.

TODO

  • Add switch for user interactivity on color bar example.
  • Documentation

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyqtgraph_extensions-0.5.2.tar.gz (50.4 kB view details)

Uploaded Source

Built Distribution

pyqtgraph_extensions-0.5.2-py3-none-any.whl (60.2 kB view details)

Uploaded Python 3

File details

Details for the file pyqtgraph_extensions-0.5.2.tar.gz.

File metadata

  • Download URL: pyqtgraph_extensions-0.5.2.tar.gz
  • Upload date:
  • Size: 50.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.9.0 Darwin/18.7.0

File hashes

Hashes for pyqtgraph_extensions-0.5.2.tar.gz
Algorithm Hash digest
SHA256 7795a07ac4338738e562ae562723cbada89353859d46e60c0d735427345d22bd
MD5 c7f055d842b6ad9561edc1a522e86d11
BLAKE2b-256 abf2c31227e35ab4c294becf54287d6af3f973c45cb0464ac6b374d2cd0a215a

See more details on using hashes here.

Provenance

File details

Details for the file pyqtgraph_extensions-0.5.2-py3-none-any.whl.

File metadata

File hashes

Hashes for pyqtgraph_extensions-0.5.2-py3-none-any.whl
Algorithm Hash digest
SHA256 4f1134f8ab7ffd64f5957a002083368eaa8b964607172f0b9cd2f5d0a16bcc04
MD5 f7bedd0a6c3da264446f2e615968193f
BLAKE2b-256 315c67839022ab03635031e294c52614bdb5992b53397c36ca7d6d4b9db2cdef

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page