-
Notifications
You must be signed in to change notification settings - Fork 99
Expand file tree
/
Copy pathRELEASE_NOTES
More file actions
376 lines (319 loc) · 17.2 KB
/
RELEASE_NOTES
File metadata and controls
376 lines (319 loc) · 17.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
Gnuplot Version 5.4.8 Release Notes
===================================
The 5.4.8 patchlevel release contains various non-critical bug fixes
to the current stable version 5.4.
Also the latex terminals have been updated to work with texlive2023.
Note: Version reporting in the Windows binaries for 5.4.7 was incorrect.
Rather than letting the generic source distribution get out of sync with
the binaries, the version has been bumped to 5.4.8 in both.
There are no other changes between patchlevels 7 and 8.
Gnuplot development is tracked in a git repository on SourceForge.
You can generate a complete history of changes using "git log"
after downloading:
git clone -b branch-5-4-stable git://git.code.sf.net/p/gnuplot/gnuplot-main
Release Notes date: 01-Jun-2023
Changes in 5.4.8
================
* FIX version reporting in Windows binaries
No other changes
Changes in 5.4.7
================
* FIX pseudofiles '+','++' must ignore "set datafile columnheader" Bug #2585
* FIX data from an array must ignore "set datafile columnheader" Bug #2585
* FIX data from an array must ignore "set datafile separator"
* FIX various problems with unbounded plot iteration Bug #2589
* FIX allow plot ... smooth acsplines with filledcurves Bug #2592
* FIX "plot title at {end|beginning}" belongs in KEYSAMPLE layer
* FIX handle empty string in last field of csv file
* FIX Handle nonlinear axes during contour generation Bug #2593
* FIX yerrorbars key sample should match bars in the plot Bug #2598
* FIX "plot with table" must skip all smoothing operations Bug #2610
* FIX cairolatex/epslatex: prevent doubled text in opaque textboxes
* FIX wxt: versions prior to 3.0 do not support XDG Bug #2587
* FIX wxt: fontscale and fontsize handling was inconsistent Bug #2373
* FIX correctly report cardinality of an empty array is zero Bug #2616
* FIX combination of pm3d options "at b" or "at t" with "depthorder"
* FIX combination of 'autotitle columnhead' and 'using col("key")' Bug #2620
* FIX do not complain if XDG files are not found because no $HOME Bug #2623
* FIX windows terminal: arrow length corrected for aspect ratio Bug #2565
* tikz epslatex cairolatex terminals updated to work with TeXLive2023
Changes in 5.4.6
================
* NEW set key {columns <exact no of columns>}
set key {keywidth <exact width>}
* NEW XDG support
startup file: $XDG_CONFIG_HOME/gnuplot/gnuplotrc
history file: $XDG_STATE_HOME/gnuplot_history
wxt configuration: $XDG_CONFIG_HOME/gnuplot/gnuplot-wxt.conf
* CHANGE remove "alldoc" build target
* CHANGE plot with polygons fillstyle empty really does mean empty
* FIX windows: various problems mixing piped input and stdin Bug #2491
* FIX x11: bad interactions of lt nodraw, bgnd and dash pattern Bug #2572
* FIX wxt: export-to-file widget should preserve line properties
* FIX svg: set initial default fill to "none"
* FIX png: back-compatibility with very old versions of gdlib Bug #2579
* FIX variable pointtype, pointsize in plot style yerrorlines
* FIX border color for polygons with variable fillcolor
* FIX definition followed by iteration in a plot command Bug #2580
* FIX parametric plot with filledcurves y1=<limit> Bug #1797
Changes in 5.4.5
================
* NEW "set key offset <dx>, <dy>" tweaks placement of the key
* NEW data-driven histogram colors (variable color from extra using column)
* CHANGE re-order drawing 3D labels to come after pm3d depthorder surfaces
* CHANGE hpgl: add terminal option "fontscale <value>"
* CHANGE for nonuniform matrix data, column(0) returns linear position in matrix
* CHANGE set pointintervalbox 0 disables drawing the background box Bug #2544
* FIX svg: hypertext font handling
* FIX track columnheaders of multiple data blocks in a single file Bug #2538
* FIX Clean up positioning of polar border, raxis, and theta tics Bug #2130
* FIX Autoscaling of logscaled raxis
* FIX memory corruption if a small plot structure is recycled Bug #2550
* FIX regression in 5.4.4 - promotion of string to integer should
should not assume that a leading 0 means octal Bug #2551
* FIX Windows qt: "pause -1" should not block mousing Bug #2549
* FIX invalid free of active datablock
Changes in 5.4.4
================
* NEW plots can use arrow styles that specify "lc rgb variable"
* CHANGE make page layout of "set view map; splot" more like that of "plot"
* - honor "set rmargin" and "set tmargin" Bug #2484
* - display x2label and y2label Bug #2484
* - revised placement of color box Bug #2484
* - reconcile linked axis data and tic ranges Bug #2483
* - apply "set key invert" to splot Bug #2381
* CHANGE cairo terminals: increase internal oversampling factor Bugs #2499 #2369
* CHANGE fig: restore terminal option "pointsmax <N>" Bug #2509
* CHANGE always add a space between items in a "print" command Bug #2488
* CHANGE consistent ordering of input columns for "plot ... ps var pt var" Bug #2524
* CHANGE gnuplot -c script.gp A B -C ... will pass A B -C ... without interpretation
* CHANGE stricter error checks when promoting string to numeric value Bug #2527
* CHANGE report GPVAL_TERM_XMIN and friends as floating point values
* FIX handle combination of axis properties logscale + autoscale + reverse Bug #2347
* FIX mis-handled arguments at start-up of "gnuplot -c script arg1 ..." Bug #2493
* FIX windows: redirected output of printf() Bug #2490
* FIX allow variable point style and point type in plot "with yerrorbars"
* FIX plots "with labels point pt variable" were off-by-one in choosing point type
* FIX contour "with labels" from binary data
* FIX x/y fractional coordinate mouse readout for nonlinear axes Bug #2526
* FIX Support combination of "set surface explicit; set hidden3d" Bug #2521
Features introduced in 5.4.3
============================
* NEW "set pm3d border retrace" will use quadrangle color for the border
* NEW "nogrid" flag for plots to opt out of dgrid3d processing
* NEW option "above|below y=<val>" for "plot with fillsteps"
* NEW "set style histogram nokeyseparators" suppress blank key entries Bug #2473
Features introduced in 5.4.2
============================
* NEW in "using" context, $# means "number of columns in current data line"
* NEW define on program entry: I = sqrt(-1) = {0.,1.}
* NEW support input data that uses epidemiological date-week formats
* NEW optional fillcolor for "set key opaque"
* NEW provide and document use of a plugin to provide uigamma function
Features introduced in 5.4.1
============================
* NEW "with rgbimage" and "with rgbalpha" accept single column ARGB input
* NEW keyword "smooth kdensity period <val>"
* NEW time format %tD encodes days relative to time 0
* NEW pm3d quadrangles in 2D projection are clipped smoothly to x and y
Features introduced in version 5.4
==================================
* Support for 64-bit integer arithmetic
o All evaluation of expressions and functions uses 64-bit arithmetic
if supported by the hardware platform.
o Integer overflow is detected and handled according to user preference.
* Voxel grids
o Gnuplot now supports operations based on 3D grids of voxel data.
o The current content of one or more voxel grids can be referenced by
splot commands to assign colors or other properties to plot elements.
o Data in a voxel grids can be plotted by splot styles dots, points,
or isosurface.
* Pixmaps as objects
o "set pixmap" allows import of a png/jpeg/gif image as a pixmap that
can be positioned anywhere in a plot or on the page. Unlike plotting
"with image", pixmap objects retain their original aspect ratio and
size independent of axis scaling or rotation.
Example: http://gnuplot.info/demo_5.4/pixmap.html
* New plot styles and plot options
o 3D plot style "with polygons" reads polygon faces from a data file.
These can be used to create a surface or to describe a solid object.
Example: http://gnuplot.info/demo_5.4/polygons.html
o "splot $voxelgrid with isosurface" creates a tessellated 3D surface
enclosing voxels above a requested threshold level.
Example: http://gnuplot.info/demo_5.4/isosurface.html
o "set spiderplot" selects a new plotting mode for creating spider
plots, also known as radar charts. These are essentially parallel
axis plots in which the axes are arranged radially rather than
vertically.
Example: http://gnuplot.info/demo_5.4/spiderplot.html
o Plot styles "with circles" and "with boxes" can be used in 3D plots.
Example: http://gnuplot.info/demo_5.4/3Dboxes.html
o 2D plot style "with arrows" is a variant of "with vectors" in which
each arrow is specified by x:y:length:angle rather than x:y:dx:dy.
o pm3d surfaces can have individual fill styles and separate top/bottom
fill colors.
Example: http://gnuplot.info/demo_5.4/hidden_compare.html
o pm3d option "noclipcb" causes quadrangles with palette color outside
cbrange to be omitted from the plot rather than being assigned a
color clipped to cbmin or cbmax.
o Contour line types can be customized.
Example: http://gnuplot.info/demo_5.4/custom_contours.html
* New data pre-processing filters
o "smooth zsort" sorts 2D points on values in a 3rd column to determine
their drawing order. In combination with using palette colors, this
facilitates highlighting outliers in a crowded scatter plot.
* New commands and command options
o Voxel grid commands "set vgrid", "set vxrange", "vclear", "vfill"
and voxel().
o New options "set walls" and "set grid vertical" for showing the
xy, xz, and yz planes in 3D plots.
o "set table separator {tab|comma|"char"}" and "plot with table"
can be used to create csv files.
o Array size can be implicit if an initializer is present, e.g.
Array A = [1,2,3]
o Extra lines of text or symbols in the key can be added by
substituting "keyentry" in place of a filename or function in
plot and splot commands.
o User-specified interpretation of mouse coordinates.
See map-projection demos.
o The "load" command can input commands from a data block as an
alternative to reading them from a file.
o "set datafile columnheaders" causes the first line of input to be
read as strings rather than as data values. This is equivalent to
"set key autotitle columnheader" but does not affect generation of
key entries. Column headers are collected into an array of strings
by any subsequent "stats" commands.
o "set view projection {xz|yz}"
* New terminals and terminal options
o New latex terminal "pict2e" supersedes older terminals "latex",
"emtex", "eepic", and "tpic", which are no longer built by default.
o The "pstricks" terminal now supports current gnuplot features
including RGB colors, transparency, filled polygons, and boxes.
o The "pcl5" terminal now supports current gnuplot features.
o The "texdraw" terminal has been updated.
o The "windows" terminal now uses Direct2D rather than GDI/GDI+.
o The "dospc" and "svga" DOS terminals now support interactive
terminal and mouse input.
* Other new features
o Enhanced text mode accepts the escape sequence \U+xxxx (where xxxx
is a 4 or 5 character hexadecimal) to represent a Unicode code point
that is converted to the corresponding UTF-8 byte sequence on output.
o Plot titles are evaluated _after_ plotting, rather than before.
This allows the title to reference values generated while plotting.
o Hypertext from "set label ... hypertext" is sent to the clipboard
on left mouse-click.
o Time/date input recognizes format %p to handle am/pm field
o Support for multiple textbox styles
o Built-in modified Bessel functions (besi0 besi1 besin)
o Built-in order N Bessel functions of the 1st and 2nd kind (besjn besyn)
* Changes/Differences to previous gnuplot versions
o Plot style "with parallelaxes" has revised syntax to match
histogram and spiderplot commands. There is no longer a limit
on the number of axes in a plot, and iteration is possible:
E.g.: "plot for [column=1:N] DATA using column with parallelaxes"
o pm3d filled area quadrangles are clipped smoothly to the current
zrange. This affects pm3d surfaces and the faces of 3D boxes,
polygons, etc.
Example: http://gnuplot.info/demo_5.4/pm3d_clip.html
o Imaginary values returned by the "using" specifier of a 2D plot
are treated as undefined values (NaN). This was already true for
function plots and for 3D data plots.
o The "set fontpath" command is deprecated (only affects PostScript).
o Since the "latex" and "eepic" terminals are deprecated, the
tutorial for using them is no longer included with the distribution.
Notes for packagers and testers
================================
Obsolete or deprecated components
---------------------------------
The "gnuplot mode" elisp and TeX files for use with emacs are now
maintained as a separate project: https://github.com/bruceravel/gnuplot-mode
so there is no longer a configuration option --with-lisp-files.
LaTeX-related terminal drivers latex, emtex, eepic, and tpic are no longer
built by default. Their closest equivalent is the new pict2e terminal, but
LaTeX users who want support for the full range of gnuplot plot styles are
recommended to use the cairolatex or tikz terminals.
The Japanese man page is provided both in eucJP and UTF-8 encodings.
Installation into appropriate directories is left to packagers.
Configuration options for interactive use
-----------------------------------------
The 5.4 source code supports three primary cross-platform interactive
modes in addition to several platform-specific modes.
1) Qt
The qt terminal supports interactive display with menu-driven
output to png, svg or pdf. If either Qt4 or Qt5 is detected by the
configure script, this will be the default terminal. It is now the
fastest and most full-featured interactive terminal option.
To disable this terminal:
./configure --without-qt
To force use of Qt4 even if Qt5 is present:
./configure --with-qt=qt4
2) Cairo/pango/wxWidgets
This set of terminals includes pngcairo, pdfcairo, epscairo, and cairolatex
for output to a file. The wxt terminal provides interactive display
All of these will be built by default if the configuration script finds
the required libcairo, libpango, libcairo, libwxgtk, and related
support libraries
To disable these terminals:
./configure --without-cairo
./configure --with-cairo --disable-wxwidgets
3) X11 (the "classic" interactive interface)
This used to be the preferred interactive interface, but the newer
wxt and qt terminals offer nicer output and a wider range of features.
Options for output to files
---------------------------
Of course the terminals (output modes) present in previous gnuplot versions
are also still available. These include, among many more obscure options:
- png/jpeg/gif output via libgd
- PostScript (*.ps or *.eps)
- Many flavors of TeX/LaTeX output, including TikZ and ConTeXt
- Bitmapped output to support older devices (e.g. HP deskjet, epson, and
seiko printers, pbm bitmapped graphics files) is available if needed
but is no longer configured in by default.
./configure --with-bitmap-terminals
Output of inline graphics to xterm or linux console terminal emulator
---------------------------------------------------------------------
The sixel or sixelgd terminals display graphics in-line with the commands
typed on a suitable terminal emulator. For example "xterm -ti 340"
emulates a vt340 with sixel color graphics. The yaft terminal emulator
can be run at linux console level with no x11 or other windowing system
active.
Options for generating interactive plots for web display
--------------------------------------------------------
- Mouseable output for display on the web can be created using either
the canvas terminal (HTML5 2D canvas element) or the svg terminal.
Both allow zooming, toggling plot elements on/off, and user-scriptable
hot keys.
Other Notes
===========
Installation
------------
You can download a source tarball for the current gnuplot version
from the gnuplot development site on SourceForge.
http://sourceforge.net/projects/gnuplot
Installation instructions are available in the source itself; the short
version for linux/unix-like systems is to unpack the tarball and then
<PRE>
build it:
cd gnuplot-5.4.6 ; ./configure ; make
test it:
make check
install it:
make install
</PRE>
Pay careful attention to the output of the ./configure script.
It may indicate that some output drivers have been omitted because the
necessary support libraries were not found. In general you need to have
previously installed the "*-devel-*" versions of these libraries.
Support
-------
Please report all bugs and installation problems to the bug tracker
on SourceForge:
https://sourceforge.net/p/gnuplot/bugs/
Development
-----------
Gnuplot development is ongoing. The development branch contains preliminary
implementations of new features. The current development version is 5.5
(odd minor number) and will eventually be released as version 5.6 or 6.0
(even minor number). Bugfixes to version 5.4 will appear in patchlevel
releases 5.4.1, 5.4.2, etc., approximately twice a year or as needed
to correct a serious problem.