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
|
GNUPLOT Version 5.0.rc2 Release Notes
=====================================
We are happy to announce a second release candidate for gnuplot version 5.
Version 5 will be a major release with significant new capabilities
and enhancements compared to previous gnuplot versions.
Please see the NEWS file for bugfixes and minor changes between version 5
release candidates -rc1 and -rc2.
Release Notes date: 27 August 2014
NOTABLE NEW FEATURES
====================
* New plot styles "with parallelaxes", labeled contours.
* New coordinate system (Degrees, Minutes, Seconds) "set xdata geographic".
* The "fit" command can now handle functions with up to 12 variables, and
can take into account errors on x as well as errors on dependent variables.
Final covariance terms are stored in user-accessible variables.
Fitting options are now controlled by the command "set fit ..." rather than
by environmental variables.
* The dot/dash pattern of a line can now be controlled independently
from other properties using the keyword "dashtype".
* The default color of individual line types can be changed using
"set linetype" (introduced in 4.6). In version 5 a default overall color
sequence can be selected using "set colors {default|classic|podo}".
The "classic" sequence is red/green/blue/magenta/cyan/yellow as used by
older gnuplot versions. The default and podo colors are chosen to be
more easily distinguished in print and in particular by people with color
vision problems.
* Text markup now supports bold and italic font settings in addition to
the subscript, superscript, font size and other options previously
provided by the "enhanced text" mode. This mode is now the default.
* Command scripts may place in-line data in a named data block for
repeated plotting.
* Bit shift operators << and >>
* RGB colors can include an alpha-channel for transparency.
# ARGBcolor = (Alpha << 24) + (Red << 16) + (Green << 8) + Blue
* Secondary axes (x2, y2) can 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 only possible
for the special case of log scaling.
* The "import" command attaches a user-defined function name to a
function provided by an extenal shared object (i.e. a plugin library).
* 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 list reported by "history".
* Hypertext labels in the interactive terminals including web display
using the HTML canvas or svg terminals.
Many other additions are described in the "New Features" section of the
documentation.
CHANGES
=======
Gnuplot development assigns very high priority to backward compatibility
with earlier versions. For example any command script that worked in
version 4.0 is expected to continue to work for all version 4 releases
including the most recent one (4.6.5). However changes introduced in
version 5 can affect the operation of some version 4 scripts.
A brief summary of potentially incompatible changes is given here.
* Earlier versions of gnuplot used the keyword "linetype" to mean both
the color and the solid/dot/dash pattern of a line. Version 5 has
separate keywords "linecolor" and "dashtype". You can use these keywords
directly in a plot command or assign any desired color and a dash pattern
to a linetype. The program now provides a default set of 8 linetypes, all solid.
You can change these or add new linetypes as you please. You do not need
to change the current terminal or terminal mode in order to use dashed lines.
* The handling of input data containing NaN, Inf, inconsistent number of
data columns, or other unexpected content has changed. See documentation
under "missing" for examples and figures.
* Time coordinates are stored internally as the number of seconds relative
to the standard unix epoch 1-Jan-1970. Earlier versions of gnuplot used
a different epoch internally (1-Jan-2000). This change resolves
inconsistencies introduced when time in seconds was generated externally.
The epoch convention used by a particular gnuplot installation can be
determined using the command `print strftime("%F",0)`.
Time is now stored to at least millisecond precision.
* The "reverse" keyword (e.g. "set xrange [*:*] reverse") now affects only
autoscaling. It has no effect on explicit ranges.
"set xrange [0:1] reverse" is _not_ the same as "set xrange [1:0]".
* Options to the "fit" command are now given by "set fit ..." rather than
by setting environmental variables. Fit can handle up to MAX_NUM_VAR
independent variables (currently 12). Variables other than the first
two (x, y) have been dissociated from axis names. This means, for example,
"set urange [U1:U2]" has no effect on fitting because "u" is not a fit
variable. Use the command "set dummy ..." to assign names to fit variables
3 ... 12.
* The function `timecolumn(N,"timeformat")` now has 2 parameters.
Because the required second parameter is not associated with a particular
data axis, this allows using the `timecolumn` function to read time data
for reasons other than specifying the x or y coordinate.
* The `call` command is implemented by providing a set of variables ARGC,
ARG0, ..., ARG9. ARG0 holds the name of the script file being executed.
ARG1 to ARG9 are string variables and thus may either be referenced directly
or expanded as macros, e.g. @ARG1. The older convention for referencing
call parameters as tokens $0 ... $9 is deprecated.
* "unset xrange" (and other axis ranges) restores the default range.
* "unset terminal" restores the original terminal of the current session.
ONLINE DEMO PLOTS
=================
Demo plots illustrating new and old features are online at
http://gnuplot.sourceforge.net/demo_5.0/
KNOWN ISSUES
============
* There is no documentation for the new "fit" options xerror|xyerror|etc.
Running old fit scripts may require adding the new keyword "noerrors"
(these new options may change for the final 5.0 release).
* It is tricky to build the wxt and qt terminals under Windows.
* Font initialization on OSX can be very slow, causing the qt terminal to
issue warning or error messages for the first plot command.
* Using mouse clicks to toggle individual plots on/off does not always
work correctly for multiplots, particular if the key box is opaque.
Toggling plots drawn in hidden3d mode (hidden line removal) does not work.
* Linking against wxWidgets 3.0 is not supported (wxt terminal).
If you configure wxt without also configure X11, you may need to set the
environmental variable TERMLIBS before configuring:
TERMLIBS="-lX11" ./configure
* Mac OSX ships with a terminal input library that appears to be GNU
libreadline, but isn't really. The program tries to cope with this, but
you may get better results by configuring gnuplot to use either its own
built-in readline routines or the real GNU libreadline.
* The gnuplot build system is not very good at figuring out where to find
or install LaTeX-related files. This can affect use of the new lua/tikz
and ConTeXt terminals.
* You can configure support for both wxt and qt into the same gnuplot
executable, but only one of these two output modes can be used in any
given gnuplot session.
NOTES TO 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/rudi/gnuplot-el
so there is no longer a --with-lisp-files configuration option.
The TeX tutorial produced by --with-tutorial is horribly out of date.
./configure --enable-backwards-compatibility will allow use of some
deprecated syntax from old gnuplot versions. However the result of
using these deprecated commands may not match the old version output.
Configuration options for interactive use
-----------------------------------------
The 5.0 source code supports three primary cross-platform output 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. The final 5.0 release may also support
scripted output to these same file formats but this is not present
in rc2. 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
- wxt for 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-wxt
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 many older devices (e.g. HP deskjet, epson,
seiko printers, pbm bitmapped graphics files) is available if needed
but is no longer configured in by default.
./configure --with-bitmap-terminals
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 gnuplot version 5.0.rc2 from the
gnuplot development site on SourceForge.
http://sourceforge.net/project/showfiles.php?group_id=2055
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.0.rc2 ; ./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:
http://sourceforge.net/tracker/?group_id=2055&atid=102055
There is also an gnuplot discussion forum on usenet group
comp.graphics.apps.gnuplot
Development
-----------
Gnuplot development is ongoing. The development branch on SourceForge
contains preliminary implementations of many new features. As of 5.0.rc2
the source for version 5.0 is held in a separate branch of the CVS repository
branch-5-0-stable. Development continues in the main branch using the
version number 5.1 (odd minor number), for eventual release as stable version
5.2 (even minor number). Bugfixes to version 5.0 will appear in patchlevel
releases 5.0.1, 5.0.2, etc., approximately twice a year or as needed to correct
a serious problem.
|