Gnuplot 5.2.7
New features
Features introduced in version 5.2
Version 5.2 is the current stable release series for gnuplot. The following list of new features is up to date as of May 2017.
New plot styles and style options
New data pre-processing filters
- Normalized frequency of occurrence in a data set (see smooth fnormal)
- Automated binning of data (see bins)
Polar mode improvements and extensions
- Polar coordinates may be used in label, arrow, and object definitions
- set [m]ttics places ticmarks and labels on the perimeter of a polar plot. See
- set rlabel places a label above the r axis
- Inverted rrange (i.e. set rrange [90:0]) allows use of celestial horizontal coordinates. See
- set border polar draws a solid line around the perimeter of a polar plot
- set theta controls the position of theta = 0 around the perimeter of a polar plot and the sense (clockwise or anti-clockwise) of increasing theta
Nonlinear coordinates systems
- Any plot axis can be assigned a pair of functions, possibly nonlinear, that describe the forward and reverse mapping to a linear range (see set nonlinear)
- The familiar command set logscale is re-implemented as a special case of a nonlinear axis where the paired functions are log(x) and exp(x).
New commands and command options
- Inside the bracketed clause of an iteration, continue jumps immediately to the next iteration, break immediately exits from the iteration
- toggle {<plotno> | "plottitle" | all}" interactively enables or disables display of one element of the current plot (see toggle)
- save fit replaces deprecated command update
- set table "outfile.name" append will append subsequent tabulated plots to an existing text file rather replacing its contents
- set pm3d lighting describes a lighting model with specular highlighting (see lighting)
- set minussign tells gnuplot to use a special symbol in the current encoding to replace the ascii character '-' in negative numbers
- set micro tells gnuplot to use a special symbol in the current encoding to replace the ascii character 'u' for the scientific notation prefix "micro" The special typographic symbols for micro and minussign are used only in axis tic labels and strings explicitly created with gprintf(). The byte sequence used to represent these characters depends on the current encoding.
New data type "array"
- This gnuplot version introduces a new data type array name[size]. An array must be declared before use. Each array element A[i] may be a string, an integer, a real number, or a complex value. A single array may contain elements with different types. The cardinality operator |A| returns the size of array A. See arrays.
New terminals and terminal options
- See sixelgd for description of a new terminal that supports interleaving plots with the command lines that generated them if gnuplot is run inside a vt340-compatible terminal emulator
- The domterm terminal supports interleaving plots with the command lines that generated them if gnuplot is run inside an svg-aware terminal emulator
- The windows terminal supports saving the current graph to a bitmap file
- The windows terminal graph window can be docked to the wgnuplot text window
- New (experimental) Direct2D/DirectWrite backend for the windows terminal
- The wxt terminal supports exporting to an EMF file or printer on Windows
- The dumb terminal supports ANSI colors for lines and fill area
- The tkcanvas terminal has been rewritten to support many more modern gnuplot features, as well as new languages. (Since 5.0.3)
Other new features
- An additional rotation angle azimuth affects the orientation of 3D plots. This can be set from the command line (see set view azimuth) or by dragging with the right mouse button.
- gnuplot running under Windows can interpret Unicode (BMP) input scripts by converting them to the current encoding from set encoding, including UTF-8
- Textboxes can be assigned a border color and fill color (see set style textbox)
- Customized plot legends (see plot title, set key, multiple keys)
- A sampling range specifier for plotting with pseudofile '+' can include a sampling interval. For example: plot sample [t=0:100:10] '+' using (t):(1):(label[t]) with labels
- Pseudo-file '++' generates samples on the u and v axes, rather than x and y. This allows placement of multiple parametric surfaces in 3D that occupy distinct regions of Cartesian space. See sampling.dem.
- ^R initiates a reverse-search through the history for the built-in readline which is used on Windows, too, see command-line-editing.
- Revised printing support on Windows using set output "PRN", see windows printing.
Features introduced in version 5.0
- The dot-dash pattern of a line can now be specified independent of other line properties. See dashtype, set dashtype, set linetype
- The default sequence of colors used for successive elements in a plot is more easily distinguished by users with color-vision defects. The color sequence is under user control (see set colorsequence). This mechanism can also be used to generate monochrome plots (see set monochrome). In previous gnuplot versions monochrome could only be selected when changing the current terminal via set terminal.
- New plot styles with parallelaxes, with table, and labeled contours.
- New data pre-processing filter for monotonic cubic splines (see smooth mcsplines)
- Text markup now supports bold and italic font settings in addition to subscript, superscript, font size and other previously available properties. Enhanced text mode is now enabled by default. See enhanced text. Text elements can be enclosed in a box (see set style textbox).
- Interactive terminals support hypertext labels that only appear when the mouse hovers over the label's anchor point.
- New coordinate system (Degrees, Minutes, Seconds). See set xtics geographic.
- The default format for axis labels is "% h" ("$%h$" for LaTeX terminals). This format is like the C standard format %g except that the exponential term, if present, is written using a superscript. E.g. 1.2 x 10^5 rather than 1.2E05.
- Command scripts may place in-line data in a named data block for repeated plotting. See inline data.
- Support for 32-bit Alpha channel + RGB color #AARRGGBB. See colorspec.
- Support for HSV color space via a translation function hsv2rgb(H,S,V).
- Secondary axes (x2, y2) may be locked to the primary axis via a mapping function. In the simplest case this guarantees that the primary and secondary axis ranges are identical. In the general case it allows you to define a non-linear axis, something that previously was possible only for log scaling. See set link.
- Each function in a plot command may optionally be preceded by a sampling range. This does not affect the overall range of the plot, only the range over which this function is sampled. See plot and piecewise.dem.
- If the external library libcerf is available, it is used to provide complex math routines cerf, cdawson, erfi, faddeeva, and the Voigt profile VP(x,sigma,gamma).
- The import command attaches a user-defined function name to a function provided by an external shared object (support is operating-system dependent). A template header and example source and make files for creating a suitable external shared object are provided in the demo collection.
- Previous commands in the history list of an interactive session can be reexecuted by number. For example, history !5 will reexecute the command numbered 5 in the history list.
- Bit-shift operators >> and <<.
- Shell invocation of gnuplot can pass parameters to a gnuplot script. gnuplot -c scriptfile.gp ARG1 ARG2 ARG3 ...