Skip to main content

Plotting large data series using PyQtChart.

Project description


Plotting large data series using PyQtChart.

Currently supports LineSeries, SplineSeries and ScatterSeries.

Quick start

Install using pip.

pip install git+

Create a plot widget, assign two axes and some line series.

import sys
from PyQt5 import QtCore, QtWidgets
from QCharted import Chart, ChartView

app = QtWidgets.QApplication(sys.argv)

# Create chart
chart = Chart()

# Create multiple axis
x = chart.addDateTimeAxis(QtCore.Qt.AlignBottom)
y1 = chart.addValueAxis(QtCore.Qt.AlignLeft)
y2 = chart.addValueAxis(QtCore.Qt.AlignRight)

# Create multiple series
temp = chart.addLineSeries(x, y)
humid = chart.addLineSeries(x, y)

# Replace data, note the `data()` method[(0, 21.8), (1, 22.3)])[(0, 50.3), (1, 51.1)])

# Append data, note the `data()` method, 22.1), 51.0)

# Create chart view
view = ChartView()

# Fit to extent


Custom series classes

Actual data is stored in a data property using numpy.

# Instead of QLineSeries()
series = LineSeries()
# Replace data[...])
# Append to data, 3)
# Clear data

Example application

The supplied example application renders 16 x 250k data samples fluently even while zooming. The QtChart line series only contain a sampled subset of the actual data. See examples/ for the example source.

Make sure to first install additional dependencies provided in requirements.txt.

python -m venv env
. env/bin/activate
(env) pip install -r requirements.txt
(env) python develop
(env) python examples/

Run the application with different options to see live plotting in action.

(env) python examples/ -c 8 -s 100


QCharted is licensed under the GNU General Public License Version 3.

Project details

Download files

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

Files for QCharted, version 1.1.1
Filename, size File type Python version Upload date Hashes
Filename, size QCharted-1.1.1.tar.gz (6.8 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page