# [Veusz 4.1](https://veusz.github.io/)

Veusz is a scientific plotting package.  It is designed to produce
publication-ready PDF or SVG output. Graphs are built-up by combining
plotting widgets. The user interface aims to be simple, consistent and
powerful.

Veusz provides GUI, Python module, command line, scripting, DBUS and
SAMP interfaces to its plotting facilities. It also allows for
manipulation and editing of datasets. Data can be captured from
external sources such as Internet sockets or other programs.

Changes in 4.1:
  * Much improved icons for dark mode
  * Provide preference for forcing dark/light mode or setting other
    color themes (includes breeze light and dark)
  * Provide portable zip executable for Windows
  * Add WebP export image format
  * Provide 600 DPI in list in export dialog
  * Bug fixes
     * Fix for formatting dock when deleting widgets (korintje)
     * Bind icon to desktop file on Wayland (antohami)
     * Fix for dual monitors under Wayland
     * Disable export formats if not supported by built Qt
     * Add missing TIF image format in binaries

Changes in 4.0:
  * Update to using Qt6 (jeremysanders/korintje)
  * Documentation updates
  * Copying SVG or image widgets copies image data (from slowphil)
  * Bug fixes:
     * HDF5 import
     * 3D rotation
     * Swap attributes for 2D data if transposing
     * Hide stderr from embedded usage unless debug=True
     * Fix histogram2d fro normed to density
     * Fix for datasets of different lengths if using gap_handling='ignore'
     * Rename nan\_handling to gap\_handling
     * Continue loading if error in plugins
     * Fix overlapping formatting dock on Mac (korintje)
  * Binaries now built using GitHub actions

## Features of package:

### Plotting features:
  * X-Y plots (with errorbars)
  * Line and function plots
  * Contour plots
  * Images (with colour mappings and colorbars)
  * Stepped plots (for histograms)
  * Bar graphs
  * Vector field plots
  * Box plots
  * Polar plots
  * Ternary plots
  * Plotting dates
  * Fitting functions to data
  * Stacked plots and arrays of plots
  * Nested plots
  * Plot keys
  * Plot labels
  * Shapes and arrows on plots
  * LaTeX-like formatting for text
  * Multiple axes
  * Axes with steps in axis scale (broken axes)
  * Axis scales using functional forms
  * Plotting functions of datasets
  * 3D point plots
  * 3D surface plots
  * 3D function plots
  * 3D volumetric plots

### Input and output:
  * PDF/EPS/PNG/SVG/EMF export
  * Dataset creation/manipulation
  * Embed Veusz within other programs
  * Text, HDF5, CSV, FITS, NPY/NPZ, QDP, binary and user-plugin importing
  * Data can be captured from external sources

### Extending:
  * Use as a Python module
  * User defined functions, constants and can import external Python functions
  * Plugin interface to allow user to write or load code to
    - import data using new formats
    - make new datasets, optionally linked to existing datasets
    - arbitrarily manipulate the document
  * Scripting interface
  * Control with DBUS and SAMP

### Other features:
  * Data filtering and manipulation
  * Data picker
  * Interactive tutorial
  * Multithreaded rendering

## Installation
Please see the file `INSTALL.md` included in the distribution for installation details, or go to the [download page](https://veusz.github.io/download/).

## License
Veusz is Copyright (C) 2003-2025 Jeremy Sanders
 and contributors. It is licensed under the [GPL version 2 or greater](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html).

## Source code
The latest source code can be found in [this GitHub repository](https://github.com/veusz/veusz).
