ANN: Veusz 1.5 released

Jeremy Sanders jeremy+complangpythonannounce at
Mon Sep 28 10:14:21 CEST 2009

Veusz 1.5
Velvet Ember Under Sky Zenith

Veusz is Copyright (C) 2003-2009 Jeremy Sanders <jeremy at>
Licenced under the GPL (version 2 or greater).

Veusz is a Qt4 based scientific plotting package. It is written in
Python, using PyQt4 for display and user-interfaces, and numpy for
handling the numeric data. Veusz is designed to produce
publication-ready Postscript/PDF output. The user interface aims to be
simple, consistent and powerful.

Veusz provides a GUI, command line, embedding and scripting interface
(based on Python) to its plotting facilities. It also allows for
manipulation and editing of datasets.

Changes in 1.5:
 * EMF export (requires pyemf and PyQt snapshot)
 * Character encodings supported in data import
 * Rewritten stylesheet handling. User can now set defaults in document
   for all settings. This is now under the Edit->Default Styles dialog.
 * A default stylesheet can be loaded for all new documents (set in
   preferences dialog)
 * Linked datasets saved in documents now use relative filename paths
   (with absolute paths as fallback)
 * Axes can now have text labels of points plotted along them (choose
   "labels" as axis mode)
 * Dataset points can be scaled to different sizes according to another
   dataset (this is the "Scale markers" option for point plotters)

More minor changes
 * Custom delimiter support in CSV data importer
 * Add SetDataText and support text in GetData in command API
 * \dot and \bar added to LaTeX renderer
 * Option to change icon sizes displayed
 * Rearrange toolbar icons and create data and widget operation toolbars
 * Zoom button remembers previous usage
 * Conversion from 1D->2D datasets more robust
 * Expression datasets can now be a constant value
 * Uses colors form theme better and allow user to change some UI colors
   in preferences
 * Fix contours if coordinates can be infinite (e.g. log scaling with zero
 * nan/inf are no longer ignored when the ignore text option is selected in
   import dialog

 * Several other minor UI changes and bugfixes

Important note
 * As the way defaults are used has been rewritten, default values are
   no longer saved on a per-user basis but are saved in a stylesheet and
   is saved in the document. You cannot currently set defaults on a widget-
   name basis.

Features of package:
 * X-Y plots (with errorbars)
 * Line and function plots
 * Contour plots
 * Images (with colour mappings and colorbars)
 * Stepped plots (for histograms)
 * Bar graphs
 * Plotting dates
 * Fitting functions to data
 * Stacked plots and arrays of plots
 * Plot keys
 * Plot labels
 * Shapes and arrows on plots
 * LaTeX-like formatting for text
 * Scripting interface
 * Dataset creation/manipulation
 * Embed Veusz within other programs
 * Text, CSV and FITS importing

 Python (2.4 or greater required)
 Qt >= 4.3 (free edition)  
 PyQt >= 4.3 (SIP is required to be installed first)
 numpy >= 1.0

 Microsoft Core Fonts (recommended for nice output)
 PyFITS >= 1.1 (optional for FITS import)
 pyemf >= 2.0.0 (optional for EMF export)
 For EMF export, PyQt-x11-gpl-4.6-snapshot-20090906 or better is
   required, to fix a bug in the C++ wrapping

For documentation on using Veusz, see the "Documents" directory. The
manual is in pdf, html and text format (generated from docbook).

Issues with the current version:

 * Due to Qt, hatched regions sometimes look rather poor when exported
   to PostScript, PDF or SVG.

 * Clipping of data does not work in the SVG export as Qt currently
   does not support this.

 * Due to a bug in Qt, some long lines, or using log scales, can lead
   to very slow plot times under X11. This problem is seen with
   dashed/dotted lines. It is fixed by upgrading to Qt-4.5.1 (the
   Veusz binary version includes this Qt version). Switching off
   antialiasing in the options may help this.

If you enjoy using Veusz, I would love to hear from you. Please join
the mailing lists at

to discuss new features or if you'd like to contribute code. The
latest code can always be found in the SVN repository.

Jeremy Sanders

More information about the Python-announce-list mailing list