Skip to content

Python library generating graphical user interfaces for easy dataset editing and display

License

Notifications You must be signed in to change notification settings

PlotPyStack/guidata

Repository files navigation

guidata: Automatic GUI generation for easy dataset editing and display with Python

pypi version PyPI status PyPI pyversions download count

ℹ️ Created in 2009 by Pierre Raybaut and maintained by the PlotPyStack organization.

Overview

The guidata package is a Python library generating Qt graphical user interfaces. It is part of the PlotPyStack project, aiming at providing a unified framework for creating scientific GUIs with Python and Qt.

Simple example of guidata datasets embedded in an application window:

Example

See documentation for more details on the library and changelog for recent history of changes.

Copyrights and licensing:

Features

Based on the Qt library, guidata is a Python library generating graphical user interfaces for easy dataset editing and display. It also provides helpers and application development tools for Qt (PyQt5, PySide2, PyQt6, PySide6).

Generate GUIs to edit and display all kind of objects regrouped in datasets:

  • Integers, floats, strings
  • Lists (single/multiple choices)
  • Dictionaries
  • ndarrays (NumPy's N-dimensional arrays)
  • Etc.

Save and load datasets to/from HDF5, JSON or INI files.

Application development tools:

  • Data model (internal data structure, serialization, etc.)
  • Configuration management
  • Internationalization (gettext)
  • Deployment tools
  • HDF5, JSON and INI I/O helpers
  • Qt helpers
  • Ready-to-use Qt widgets: Python console, source code editor, array editor, etc.

Dependencies and installation

Supported Qt versions and bindings

The whole PlotPyStack set of libraries relies on the Qt GUI toolkit, thanks to QtPy, an abstraction layer which allows to use the same API to interact with different Python-to-Qt bindings (PyQt5, PyQt6, PySide2, PySide6).

Compatibility table:

guidata version PyQt5 PyQt6 PySide2 PySide6
3.0-3.5 ⚠️ ⚠️
Latest

Other dependencies and installation

See Installation section in the documentation for more details.