Skip to main content

dtocean-qt actions codecov PyPI - Python Version

dtocean-qt

PySide6 (Qt for Python) utilities for use within the DTOcean software suite. Currently, only widgets and models for pandas (the data analysis / manipulation library for Python) are available.

Part of the DTOcean suite of tools.

Installation

pip install dtocean-qt

Usage

An example of a basic PySide6 widget for a pandas DataFrame. Begin by importing the required functions and classes:

>>> import pandas
>>> import numpy
>>> import sys
>>> from PySide6 import QtWidgets
>>> from dtocean_qt.pandas.excepthook import excepthook
>>> from dtocean_qt.pandas.models.DataFrameModel import DataFrameModel
>>> from dtocean_qt.pandas.views.DataTableView import DataTableWidget
>>> from dtocean_qt.pandas.views._ui import icons_rc

Redirect exceptions:

>>> sys.excepthook = excepthook

Now set up a new empty DataFrame model:

>>> model = DataFrameModel()
>>> model.freeze_first = True

Setup an application and create a data table widget:

>>> app = QtWidgets.QApplication([])
>>> widget = DataTableWidget()
>>> widget.resize(800, 600)
>>> widget.hideVerticalHeader(True)

Assign the created model to the widget:

>>> widget.setViewModel(model)

Now create some test data:

>>> data = {
...    'A': [10, 11, 12], 
...    'B': [20, 21, 22], 
...    'C': ['Peter Pan', 'Cpt. Hook', 'Tinkerbell'],
...    'D': [True, True, False]}
>>> df = pandas.DataFrame(data)
>>> df
    A   B           C      D
0  10  20   Peter Pan   True
1  11  21   Cpt. Hook   True
2  12  22  Tinkerbell  False

Convert the column to the numpy.int8 data type to test the delegates in the table. int8 is limited to -128-127:

>>> df['A'] = df['A'].astype(numpy.int8)
>>> df['B'] = df['B'].astype(numpy.float16)
>>> df
    A     B           C      D
0  10  20.0   Peter Pan   True
1  11  21.0   Cpt. Hook   True
2  12  22.0  Tinkerbell  False

Fill the model with data:

>>> model.setDataFrame(df)

Finally, start the app:

>>> widget.show()
>>> app.exec() # doctest: +SKIP

You can find other examples in the examples folder of the source.

cd examples
python TestApp.py

Development

Development of dtocean-qt uses the Poetry dependency manager. Poetry must be installed and available on the command line.

If installing from the git repository, the image files must first be retrieved using git-lfs (ensure that git-lfs is installed first):

git lfs fetch --all
git lfs pull

To install:

poetry install

Tests

A test suite is provided with the source code that uses pytest.

Install the testing dependencies:

poetry install --with test

Run the tests:

poetry run pytest

Code quality can also be audited using the ruff and pyright tools. Install the dependencies:

poetry install --with audit

Run the audit:

poetry run ruff
poetry run pyright src

The above tests can be run across all compatible Python versions using tox and tox-uv. To install and run:

poetry install --with tox
poetry run tox

Contributing

Please see the dtocean GitHub repository for contributing guidelines.

Credits

This package is a fork of the pandas-qt project by Matthias Ludwig at Datalyze Solutions. It was adapted for use in the EU DTOcean project by Mathew Topper at TECNALIA.

It is now maintained by Mathew Topper at Data Only Greater.

License

MIT

Metadata

Release files for dtocean-qt 4.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for dtocean-qt 4.0.0
File
dtocean_qt-4.0.0-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
dtocean_qt-4.0.0-cp314-cp314-manylinux_2_39_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.39+ x86-64 Details
dtocean_qt-4.0.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
dtocean_qt-4.0.0-cp313-cp313-manylinux_2_39_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.39+ x86-64 Details
dtocean_qt-4.0.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
dtocean_qt-4.0.0-cp312-cp312-manylinux_2_39_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.39+ x86-64 Details

Total release size: 497.1 kB

Release files / dtocean_qt-4.0.0-cp314-cp314-win_amd64.whl

Download URL dtocean_qt-4.0.0-cp314-cp314-win_amd64.whl
Size 82.9 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
fc27373c3f8f4bdd4483ecf0b002e211af9161e9c8c825422c2093268985fdff
BLAKE2b-256 checksum
How to use checksums
ce5cae86372e48421e430bfb862c018dbaa2e90d7844d0b0703dfc39e1a9e583
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 10, 2026.

Transparency log

Release files / dtocean_qt-4.0.0-cp314-cp314-manylinux_2_39_x86_64.whl

Download URL dtocean_qt-4.0.0-cp314-cp314-manylinux_2_39_x86_64.whl
Size 82.7 kB
Tags CPython 3.14 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
2e00ffc9c5641e2a35566d67e079ffc0c4f6ce9abc421cb213c1e783f0f273ac
BLAKE2b-256 checksum
How to use checksums
f9838e567643d5c42c0bfca304dbc56dc9aaaa8dd103c1b24d5f3c05db7a500b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 10, 2026.

Transparency log

Release files / dtocean_qt-4.0.0-cp313-cp313-win_amd64.whl

Download URL dtocean_qt-4.0.0-cp313-cp313-win_amd64.whl
Size 83.1 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
de5b156f11c44e35bdd575d64f5e01e6ac6e48c971c5f65742397c0b4fc1cc4b
BLAKE2b-256 checksum
How to use checksums
09f1cda8bce79d27b0e78ba27659f1c79ba1b92f97e7811f067390780bfbf906
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 10, 2026.

Transparency log

Release files / dtocean_qt-4.0.0-cp313-cp313-manylinux_2_39_x86_64.whl

Download URL dtocean_qt-4.0.0-cp313-cp313-manylinux_2_39_x86_64.whl
Size 82.7 kB
Tags CPython 3.13 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
f3f178d7074d3e4b2896c10d2d2ec85e4ba9e69201815925abaf36f2c53d173a
BLAKE2b-256 checksum
How to use checksums
755f87262d7a00d9e27b1536f0a9767c0882218884e6f2dddf3508dde0bc4b7a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 10, 2026.

Transparency log

Release files / dtocean_qt-4.0.0-cp312-cp312-win_amd64.whl

Download URL dtocean_qt-4.0.0-cp312-cp312-win_amd64.whl
Size 83.1 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
2d1ddfccaf09f894343264d3f2f79e04befe67bfd12acc1876188663cde86e9d
BLAKE2b-256 checksum
How to use checksums
42c4b2c749acaba544fb9ae89c39afad570e6c6184aff5cc11b70df86d794d01
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 10, 2026.

Transparency log

Release files / dtocean_qt-4.0.0-cp312-cp312-manylinux_2_39_x86_64.whl

Download URL dtocean_qt-4.0.0-cp312-cp312-manylinux_2_39_x86_64.whl
Size 82.7 kB
Tags CPython 3.12 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
59026cc27df0f9151015bef377f486b0472c723ed0c73b30ef31644313b916b0
BLAKE2b-256 checksum
How to use checksums
9d9ee66995f1698d0656cbb46a8180509a79307ccc2d2253bcc261b224473c5d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 10, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

4.0.0 This release

6 release files

0.10.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page