Veusz Changelog

What's new in Veusz 1.24

May 6, 2016
  • Changes in 1.24:
  • Text labels can now include Python expressions inside %{{ }}%
  • Added built-in functions DATE([fmt]), TIME([fmt]), FILENAME() and BASENAME() when evaluating expressions, which are useful when used in labels
  • Added Python dictionary ENVIRON when evaluating expressions, to obtain values from environment variables
  • Added DATA(name, [part]) function to expression environment for accessing values from datasets, useful for function evaluation or labels
  • Added SETTING(path) function for expression evaluation to obtain values of settings
  • Added ESCAPE(text) function to environment, which allows LaTeX special characters to be displayed in labels
  • Add fractions and percentages units to polar plot
  • Allow number of spokes to be varied in polar plot
  • Widgets can be clicked holding down shift or ctrl, to add or toggle their selection
  • Add K. Moreland's cool-warm colormap (thanks to S. Richardson)
  • Added further green-map, blue-darkred, blue-darkorange, brown-blue and blue-orange colormaps from Oregon geography dept.
  • Add logarithm and exponential dataset plugins
  • Add Wipe() command to embedding interface to clear document
  • Add File->Reload menu option to reload from saved document
  • Add tooltip to items in FieldWidget showing widget path
  • Bux fixes:
  • Fix transparency with bar plot
  • Use getcwdu() for python2 to avoid bugs combining paths
  • Handle inf/nan when converting to human readable form in plots
  • Fix CreateHistogram on command line without binparams parameter
  • Handle empty 2D dataset import with grid at edge enabled
  • Do not allow error bars on imported CSV non-numeric data
  • Handle missing argument in \size
  • For data edit dialog, allow 1D dataset to replace 2D dataset
  • Crash if zoom to be height when height is zero
  • Fix problem with 2D import if error message is in unicode
  • With axis-function widget catch result if greater than 1 dimension
  • Fix cloning for datasets with / in name
  • Fix crash in embedding if plot window closed while rendering in progress

New in Veusz 1.23.2 (Jan 4, 2016)

  • Add data clipping dataset plugin
  • Fix boxplot with manual settings
  • Fix plugin normalize and divide by maximum for new numpy versions
  • Avoid error in 2d data creation
  • Fix problems with unicode characters in plugins in Python 2.x
  • Clip axis to sensible range -1e100->1e100
  • Handle unicode errors from operating system in Veusz scripts
  • Handle unicode errors in error reports
  • Fix crash in \color

New in Veusz 1.23 (Apr 18, 2015)

  • Add new export dialog box which can export multiple pages and modify the export options
  • Add new dataset filtering dialog
  • Add cubehelix() functional colormap
  • Add -stepN suffix for colormaps to make arbitrary numbers of steps
  • Fix incorrect colors in log images and log color scales
  • Fix unsafe commands not being run
  • Minor changes:
  • Fix incorrect use of None in (x,...) pattern
  • Catch crash if plotting nan/inf value in log space
  • Fix getData in dataset plugin for dimensions=2
  • Catch error in too large float to date time conversion
  • Catch disappeared file during import
  • Index error fixed in pickable
  • Catch error in data edit dialog if 2d dataset size changes
  • If root widget is selected with others, do not error on hide
  • Fix undo for dataset histogram with a single output dataset
  • Fix error resizing ellipse with a tuple width, height or position setting
  • Only use finite values in histogram
  • Rewrite Line/FillSet setting controls for internal consistency and to fix new style extended fills
  • Do not crash with log date-time axes
  • Also ignore non-finite values when fitting with minuit
  • Avoid syntax error with invalid colormap
  • Updates to setup.py and desktop files
  • Recreate dataset now works if dialog hasn't been opened already
  • Restore dock layout when using Python3
  • Fix undo after loading stylesheet/custom definitions
  • Support unicode example filenames
  • Clip bezier lines to avoid problems with log axes

New in Veusz 1.22 (Oct 19, 2014)

  • Add option to ignore white space following delimiters when importing CSVs
  • Allow x/yedge and x/ycent to be inverted to change data order when import 2D data
  • Rewrite of widget tree internals to fix miscellaneous bugs
  • Optionally use astropy for SAMP
  • Add setting to extend the python import path
  • Add option to select widgets with same name on page
  • Resize rectangular shapes keeping other corners fixed. Old symmetric resize behaviour is retained if shift is pressed.

New in Veusz 1.21.1 (Aug 31, 2014)

  • Changes:
  • Add swap option on keys, swapping symbol and text
  • Bug fixes:
  • Fix missing labels if colorbar out of plot
  • Preserve tags when reloading datasets
  • Handle nan/inf/-inf when as value in UI
  • Remove dependence on pyqtconfig in build system
  • Handle errors properly in 2D CSV read
  • Do not crash if selecting siblings of document widget
  • Fix accidental modification of data by line widget
  • Improve PDF bounding box rounding to prevent chopping near edge
  • Fix function plotter in embedding
  • Fix astropy version checking
  • Fix crash for error bar in CSV with blank previous column
  • 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
  • Input and output:
  • EPS/PDF/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 picker
  • Interactive tutorial
  • Multithreaded rendering

New in Veusz 1.21 (May 5, 2014)

  • Add HDF5 saved document format
  • Add filled curve error bar style
  • Add fill left/right options for point plotter
  • Add filetype filters to import dialog file browser dialog
  • In file completer in import dialog, use selected tab as filter
  • Move code to use PyQt new style signals
  • Add a master color setting for xy point and nonorthpoint plot
  • Line labelling algorithm much improved in contour plots, which rotates text to match line angle and avoids label overlaps
  • More accurate axis tick label bounding boxes, allowing rotated labels to be placed close together
  • Add reflection and rotation options to vector field widget
  • Switch to scientific notation earlier when showing float settings
  • Bug fixes:
  • Direction combo did not work in import dialog
  • Saving text datasets did not work in Python3
  • Fix partial dataset evaluation issue when loading documents
  • 2D non-regular pixel spaced images give error if clipped in y
  • Handle Unicode quoted characters in simple text data files
  • xcent/ycent in Dataset2D import plugins were ignored
  • promote_tab broken for import plugins
  • Full screen view when all pages are deleted
  • Crash with empty dataset and boxplot widget
  • Fix copy and paste of datasets
  • Python 3 resizing axis bug
  • Crash if picking/zooming on document with no pages
  • Crash if reediting histogram dataset with blank output entry
  • Use end of text formatting string beyond format specifier
  • When writing SVG text as text, use xml:space="preserve" to avoid missing whitespace
  • Embedding socket issue on Python 3.4+

New in Veusz 1.20.1 (Feb 12, 2014)

  • Changes in 1.20.1:
  • Include free-desktop appdata, MIME and desktop files
  • When plotting xy widget filled error regions, plot line on top
  • Bug fixes:
  • Fix embedding interface startup problem in 1.20
  • Additional embedding interface fixes for Python 3
  • Fix crash in tutorial if flashing widget deleted
  • Fix polar plot crash with reverse minumum and maximum radii
  • Fix crash when changing range of broken axes interactively
  • Fix object deletion crash in setting menu
  • Check output dataset is not same as an input for histograms
  • Fix for compilation on Qt 4.6
  • Catch socket errors on embed client
  • Fixes for formatting strings, including fixes for arguments of the extended %Vg format and properly supporting %%
  • When restoring window position, do not restore offscreen

New in Veusz 1.20 (Jan 16, 2014)

  • Add HDF5 file data import
  • Allow expressions to be edited for linked 2D datasets
  • Add support for 2D datasets with irregular gridpoints
  • Add 2D data CSV import
  • Allow safe renaming of linked datasets
  • Support importing text from FITS files

New in Veusz 1.19.1 (Nov 29, 2013)

  • Add option to disable scaling of marker border with point scaling
  • Implement label at-minimum/at-maximum for ternary plot
  • Add border and background fill settings for text label widget
  • Enable FITS support with astropy

New in Veusz 1.19 (Nov 18, 2013)

  • Make code compatible with python3
  • Separation of python module and resources in source package (packagers may need to consult INSTALL)
  • Move to v2 of PyQt API
  • Remove deprecated numpy API from helpers module
  • Allow FITS dataset names to be blank if prefix/suffix are not
  • New ast-based code security checker
  • Picker uses 1-based index for consistency
  • Allow non-text datasets to be used for labels
  • Add number->text conversion dataset plugin
  • Add binning dataset plugin
  • Add notes properties to document, pages and graphs
  • Allow more significant figures in float values
  • Intelligent choice of significant figures when interactively changing axis range
  • Decrease minimum range of axis
  • Add notes setting to document, pages and graphs
  • Bug fixes:
  • Fix crash if other linked axis not initialized
  • Fix crash if trying to edit non-editable datasets
  • Make ignore exception work in error reporting dialog
  • Renaming datasets, widgets and editing data now allow original text to be edited, rather than being cleared
  • Fix line positions on broken axes
  • OS X Mavericks - fixes for opening files from finder and fonts

New in Veusz 1.18 (Jul 8, 2013)

  • Add support for dataset expressions when plotting
  • Add axis-function widget for plotting axes which have a scale given by a function, or are linked to a different axis via a function
  • Add stepped colour maps
  • Support editing multiple datasets simultaneously in editor
  • Add setting to fix aspect-ratio of graphs
  • Add 'vcentre' line step mode for vertical step plots
  • Add internal margin setting for grids to separate sub-plots
  • Add pixel, pixel_wcs, fraction and linear_wcs FITS import coordinate system modes
  • Add drop down toolbar button menu to create axis widgets
  • More efficient widget dependency resolution
  • Bug fixes:
  • Fix reversed 'broken'-axes
  • Do not always draw axes above other widgets (fixes problem with key below axis)
  • Fix use of transparency image when plotting non-square images
  • Allow lists passed as xrange and yrange to create 2D dataset
  • Fix FieldBool positioning for plugins
  • QDP import: fix "no" values when used mixed with numbers
  • Remove warning of log images with zeros
  • For embedded mode, always return string for __repr__
  • Workaround for windows appearing behind for Mac OS X
  • Improve property spacing on Mac OS X

New in Veusz 1.17.1 (Apr 13, 2013)

  • Allow coloured points for non-orthogonal plots (polar, ternary)
  • Remove unnecessary exception data

New in Veusz 1.17 (Mar 25, 2013)

  • Add new broken axis widget with gaps in the numerical sequence
  • Grid lines are plotted always under (or over) the data
  • Shift+Scroll wheel scrolls left/right (thanks to Dave Hughes)
  • Polar plots can have a "minimum" radius and log axes
  • Many more LaTeX symbols added
  • Add SAMP/VoTable support (thanks to Graham Bell)
  • New shifted-points xy line mode, which plots a stepped line with the points shifted to lie between the coordinates given
  • Points can be picked to console and/or clipboard (thanks to Valerio Mussi)
  • Allow reversed ternary plot

New in Veusz 1.16 (Jul 9, 2012)

  • Changes:
  • Experimental MathML support
  • Add upper/lower-left/right arrows
  • Add options to clip text/lines/shapes to graphs
  • Add stacked-area option to bar plot widget
  • Draw stacked bar plots top-down for better overlapping line behaviour
  • Axis labels can be placed at left or right of axes, in addition to centre
  • Line widget now has length-angle or point-to-point modes. Better support for only specifying some coordinates.
  • Exception dialog records more detailed traceback
  • Use top level windows for non-modal dialogs, giving minimize in window and no always-on-top behaviour
  • Zero length vectors and arrows in vector fields are not plotted
  • Add support for strings to be translated
  • Add "Sort" dataset plugin
  • Add "Histogram 2D" dataset plugin
  • Add "Divide by Maximum" and "Normalize" dataset plugins
  • Support for *args and **kwargs for custom functions
  • Custom colormaps can be defined in the custom editing dialog
  • Bug fixes:
  • Use correct definition of 1pt = 1/72in
  • Workaround for splash screen problem
  • Fix numerous problems reported by pyflakes
  • Histograms fail when saved
  • Fix plot with nan functions
  • Fix failure of self tests on ARM platforms
  • Force pages/documents to have physical sizes
  • Fix crash if deleting multiple datasets in data edit dialog
  • Check dimensions of datasets in SetData
  • Handle better zero bytes in data files
  • Fix error if page size zero
  • Fix error if vector baselength is zero
  • If dataset plugin parameter not given in saved file, use default
  • Fix crash for axes with same minimum and maximum
  • Fix CSV import problem when same dataset has multiple types
  • Thinning markers works when using marker sizes / colors

New in Veusz 1.15 (Apr 4, 2012)

  • Improved hatching:
  • More hatch styles
  • Adjust spacing of hatching
  • Change hatching line style
  • Allow hatching background color
  • Axes will not extend beyond specified min and max values
  • Add options to extend axes by 2, 5, 10 and 15% of data range
  • Ctrl+MouseWheel zooms in and out of plot
  • Full screen graph view mode
  • New dataset plugins
  • Linear interpolation
  • Cumulative value
  • Rolling average
  • Subtract mean / minimum
  • Allow grid widgets to be placed in grid widgets
  • Catch EnvironmentError exceptions on Windows
  • Allow multiple datasets to be selected in dataset browser
  • Allow tagging of datasets and allow datasets be grouped by tags in dataset browser
  • Allow text to be written as text in SVG, rather than curves
  • Add DBus interface to program, if DBus is installed
  • 2D QDP support
  • Add setup.py options for packagers
  • --veusz-resource-dir : location of data files
  • --disable-install-docs
  • Add title option for keys

New in Veusz 1.14 (Nov 25, 2011)

  • Added interactive tutorial
  • Points in graphs can be colored depending on another dataset and the scale shown in a colorbar widget
  • Improved CSV import
  • better data type detection
  • locale-specific numeric and date formats
  • single/multiple/none header modes
  • option to skip lines at top of file
  • better handling of missing values
  • Data can be imported from clipboard
  • Substantially reduced size of output SVG files
  • In standard data import, descriptor can be left blank to generate dataset names colX
  • Axis plotting range can be interactively manipulated
  • If axis is in date-time format, show and allow the min and max values to be in date-time format
  • ImageFile widget can have image data embedded in document file
  • Fit widget can update the fit parameters and fit quality to a label widget
  • Allow editing of 2D datasets in data edit dialog
  • Add copy and paste dataset command to dataset browser context menu

New in Veusz 1.12 (Jun 28, 2011)

  • Multiple widgets can now be selected for editing properties
  • Add Edit->Select menu and context menu for above
  • Added context menu on dataset browser for filenames to reload, delete or unlink all associated datasets
  • New tree-like dataset browsing widget is shown in data edit dialog
  • Importing 1D fits images is now supported
  • Date / time data has its own dataset type
  • The data edit dialog box can create or edit date/time data in human-readable form
  • Minor improvements:
  • Add LaTeX commands \cdot, \nabla, \overline plus some arrows
  • Inform user in exception dialog if a new version is available
  • Add linevertbar and linehorzbar error bar styles
  • Bug fixes:
  • Fix crash on filling filled error regions if no error bars
  • Remove grouping separator to numbers in locale as it creates ambiguous lists of numbers
  • Undo works properly for boolean and integer settings
  • Prevent widgets getting the same names when dragging and dropping
  • Hidden plot widgets are ignored when calculating axis ranges
  • Combo boxes are now case sensitive when displaying matches with previous text
  • Fix errors if plotting DatasetRange or Dataset1DPlugin datasets against data with nan values
  • Fix division by zero in dataset preview
  • Do not leave settings pointing to deleted widgets after an undo
  • Fix errors when using super/subscripts of super/subscripts
  • Fix crash when giving positions of bar plot and labels
  • Do not allow dataset names to be invalid after remaining
  • Several EMF format bug fixes, including not showing hidden lines
  • and not connecting points making curves
  • Stop crash when contouring zero-sized datasets

New in Veusz 1.9 (Sep 2, 2010)

  • Added "Dataset plugins" to easily allow the user to write or load Python code to make new datasets, optionally linked to existing datasets.
  • Includes plugins as standard for
  • Adding and multiplying constants or datasets
  • Dividing datasets
  • Computing means of datasets
  • Computing extremes of datasets
  • Joining or combining datasets as parts or element by element
  • Thinning points from datasets
  • Converting from polar to Cartesian coordinates
  • Filtering datasets using expressions
  • See here for details: http://barmag.net/veusz-wiki/DatasetPlugins
  • Added "Tools plugins" which allow the user to write Veusz macros in Python which can take parameters and be added to the menu.
  • Includes plugins for
  • Randomizing or replacing colors
  • Finding and replacing text
  • Increasing / decreasing font sizes
  • Cloning widgets for different datasets
  • See here for details: http://barmag.net/veusz-wiki/ToolsPlugins
  • C++ code added to speed up data to image conversion
  • Add vector field plot type
  • Add text dataset support for Import plugins
  • Add "Node" embedding interface to easily allow manipulation of the widget/setting tree. See http://barmag.net/veusz-wiki/EmbeddingPython
  • Veusz now starts in home directory or previous directory used. This can be switched off in the preferences dialog to use current directory.
  • Distances specified in points now show drop down box with common point sizes to make increasing/decreasing sizes much easier.
  • Minor features added:
  • Color selectors are updated if new colors added to other color selectors
  • Exception dialog box uses web to send data rather than email, so no mail transfer agent is required.
  • Text entry box brought up with '..' goes away when clicking outside it
  • Improvements to appearance of buttons in Mac OS X
  • Bug fixes:
  • Fixed dataset expressions for zero-dimension expressions
  • Dialog boxes are properly destroyed on closing to stop memory leaks
  • Do not give error if same dataset defined in dataset dialog and descriptor in data file
  • Fix license on some C++ files
  • Use correct web browser when clicking on links in menus
  • Exceptions are caught and user notified when loading plugins
  • Missing recent files are removed from recent files menu
  • Non finite values ignored when fitting data
  • When fitting data min and max properties used if set

New in Veusz 1.7 (Mar 29, 2010)

  • Widgets can be moved by dragged and dropped in the widget tree, or copied by holding down ctrl at the same time
  • Tick labels are centred if possible at the start and ends of axes
  • When putting graphs in grid, axis labels and tick labels are placed in much better positions
  • Embedding module is shipped in binary versions
  • Grid lines can be drawn on axis minor ticks
  • Contour widget can draw minor (dotted) contours between main contours
  • Logarithmic contours have proper logarithmic spacing
  • Fixes for widget names and dataset names with Unicode characters, including copy and paste
  • Optional smoothing in the image widget
  • Minor changes:
  • Errors in evaluating expressions are logged in the console window, and do not show exceptions
  • Fix problems when importing multiple symbols from python modules in the custom import dialog
  • Use minus sign for negative numbers in tick labels, rather than hyphens
  • Contour widget lines can have transparency
  • Datasets are sorted by name when writing to saved document
  • Use correct status for paste button when starting application
  • Add option for extra space between axes and tick labels, and axis labels
  • Preference added for background color of exported bitmaps
  • Add IsClosed() and WaitForClose() embedding functions to check whether plot window is closed, or to wait for closing of plot window.

New in Veusz 1.6 (Jan 26, 2010)

  • User defined constants, functions or external Python imports can be defined for use when evaluating expressions.
  • Import descriptor is much more tolerant of syntax, e.g. "x,+- y,+,-" can now be specified as "x +- y + -".
  • New SVG export (PyQt >= 4.6). Supports clipping and exports text as paths for full WYSIWYG.
  • Dataset names can now contain any character except "`". Names containing non-alphanumeric characters can be quoted in expressions `like so`*1.23
  • Widget names can contain any character except "/"
  • A transparency dataset can be provided to specify the per-pixel transparency of the image widget.
  • A polygon widget has been added.
  • There is a new option to place axis ticks outside the plot (outer ticks setting on axis widget)
  • Several new line styles have been added.
  • Several new plotting markers have been added.
  • The capture dialog can optionally retain the last N values captured.
  • Minor changes:
  • Use of flat cap line style for plotting error bars for exactness.
  • Add fixes for saving imported unicode text.
  • Fix image colors for big endian systems (e.g. Mac PPC).
  • Add boxfill error bar style, plotting errors as filled boxes.
  • Positive and negative error bars are forced to have the correct sign.

New in Veusz 1.5 (Sep 28, 2009)

  • 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 ar 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 value)
  • nan/inf are no longer ignored when the ignore text option is selected in import dialog
  • Several other minor UI changes and bugfixes

New in Veusz 1.4 (Jun 4, 2009)

  • Dates can be plotted on axes
  • Bar graph component, support bars in groups and stacked bars with error bars
  • Improved import:
  • text lines can be ignored in imported files
  • prefix and suffix can be added to dataset names
  • more robust import dialog
  • Markers can be "thinned" for large datasets
  • Further LaTeX support, including frac for fractions and \ for line breaks.
  • Keys show error bars on datasets with errors
  • Axes can scale plotted data by a factor
  • Mac OS X binary now shows icons
  • More minor changes:
  • Mathematical expressions can be entered in many places where numbers are entered (e.g. axis minima)
  • Many more latex symbols
  • Text labels can also be placed outside graphs directly on pages
  • Dataset expressions can be edited
  • Data can be copied out of data edit dialog. Rows can be inserted or deleted.
  • Mac format line terminators are allowed in import files
  • Preview window resizes properly in import dialog

New in Veusz 1.2.1 (Dec 2, 2008)

  • Shapes, lines and arrows can be added to the plot, moved with the mouse and resized. Pages, graphs, grids, axes and labels can be moved with the mouse or resized interactively. Graph keys can have multiple columns. Error bars can have cross-ends placed along them. The embedding interface has been made more robust and expanded and now works under Windows. Linux, Windows and Mac OS X binaries are now provided.

New in Veusz 1.1 (Oct 3, 2008)

  • Veusz can now automatically rescale axes when plotting functions.
  • Labels on plots can be dragged around using the mouse.
  • Many plotting symbols have been added to the program.
  • Plots can be exported in SVG format.
  • A lot of code behind the axis scaling and the plot window has been rewritten and several minor bugs have been fixed.