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.4.tar.gz (50.5 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for pyqtgraph_extensions-0.5.4.tar.gz
Algorithm Hash digest
SHA256 bf4e680677feca822caaf17a58b973381962c1c751ce14c64bf9c8c3225bee99
MD5 06bcfbb87ab50f91adc2c504e0ba6fa1
BLAKE2b-256 0b092a042924f230799738668b362a99972e107c68ee9389d3297f792bdd26d0

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for pyqtgraph_extensions-0.5.4-py3-none-any.whl
Algorithm Hash digest
SHA256 caaeb8dddc9377ece7c8c4f5c1d0c2f1187ca76e54d42b8b7d56daf6b87186be
MD5 3e30e21862ed9f31dff9b8900920ceb4
BLAKE2b-256 fe2a306f5ea3d09290edaf539e706dbd299dfa90b7b8894b7b701ef59089778e

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