Getting started with Gnuplot
Remarks#
This section provides an overview of what gnuplot is, and why a developer might want to use it.
It should also mention any large subjects within gnuplot, and link out to the related topics. Since the Documentation for gnuplot is new, you may need to create initial versions of those related topics.
Versions#
Version | Last patchlevel | Last Release Date |
---|---|---|
5.0.x | 5.0.5 | 2016-10-09 |
4.6.x | 4.6.7 | 2015-04-28 |
4.4.x | 4.4.4 | 2011-11-13 |
4.2.x | 4.2.6 | 2007-07-01 |
4.0.x | 4.0.0 | 2004-04-01 |
Installation or Setup
Gnuplot is a portable command-line driven graphing utility. This example will show how to setup gnuplot in the various platforms.
Windows
-
Download the latest version of the installer from gnuplot site.
-
Run the downloaded file and allow it to run as administrator if requested
-
On the setup window select the language and follow the instructions on screen.
-
(optional) During the installation you may select the gnuplot to be added to the PATH that will allow you to run commands from anywhere on the command line. If you choose not to do so you may add it manually later or
cd
to the gnuplot installed directory prior to running commands.
The default installation location of gnuplot on Windows is C:\Program Files (x86)\gnuplot
NOTE: the filename will be of the format: gp<version>-win32-mingw.exe
Linux
The installation on Linux can be done through the different package managers as follows.
Arch
$ sudo pacman -S gnuplot
Debian and Ubuntu
$ sudo apt-get update
$ sudo apt-get install gnuplot
CentOS / RedHat
$ sudo yum check-update
$ sudo yum install gnuplot
Fedora
$ sudo dnf check-update
$ sudo dns install gnuplot
Mac OSX
Using Homebrew
$ brew install gnuplot
Using MacPorts
$ sudo port install gnuplot
Test the installation
After installing gnuplot it’s a good idea to run a simple example to ensure all is working fine.
- Open your terminal
- Type
gnuplot
. - Your prompt should now change to
gnuplot>
- Type:
plot sin(x)
If all is well you should see now a sin(x) graphic generated by gnuplot.
Note: if you are on Windows and have not added gnuplot
to your PATH
you’ ll need to navigate to the <gnuplot_install_path>\bin
folder. The default location is: C:\Program Files (x86)\gnuplot\bin
Basic introduction to programming language’s rules
From the gnuplot 5.0 official online documentation:
The command language of gnuplot is case sensitive, i.e. commands and function names written in lowercase are not the same as those written in capitals. All command names may be abbreviated as long as the abbreviation is not ambiguous. Any number of commands may appear on a line, separated by semicolons
;
. (T. Williams, C. Kelley - gnuplot 5.0, An Interactive Plotting Program)
Some examples of these basic rules are
1. A case sensitive language
Typing lowercase-defined commands in uppercase will generate an invalid command
warning.
gnuplot> set xlabel "x"
gnuplot> Set xlabel "x"
^
invalid command
Also the N
variable will be different from the n
one.
2. Abbreviations
You can find an almost complete list of abbreviations here. Anyway the first three letters of any command in gnuplot work always as abbreviations. Some commands allows also a more powerful contraction. A little example is given below.
gnuplot> p sin(x)
gnuplot> rep
gnuplot> q
where p
stands for plot
, rep
for replot
and q
for quit
.
3. Separators
The symbol used to separate commands on a singe line is ;
set title "My First Plot"; plot 'data'; print "all done!"
5. Comments
Comments are supported as follows: a
#
may appear in most places in a line and gnuplot will ignore the rest of the line. It will not have this effect inside quotes, inside numbers (including complex numbers), inside command substitutions, etc. In short, it works anywhere it makes sense to work. (Ibidem)
Just remember the simple “anywhere it makes sense to work” rule.
gnuplot> # this is a comment, nothing will happen
gnuplot> plot sin(x) # another valid comment
gnuplot> plot sin(#x)
^
invalid expression
4. Extending commands
Commands may extend over several input lines by ending each line but the last with a backslash (
\
). The backslash must be the last character on each line. The effect is as if the backslash and newline were not there. That is, no white space is implied, nor is a comment terminated. Therefore, commenting out a continued line comments out the entire command. (Ibidem)
For example, to split plot
command on multiple lines,
plot\
sin(x),\
cos(x)
will plot the same as
plot sin(x), cos(x)
A little note on “commenting out a continued line comments out the entire command”. If you type the command
plot\
sin(x),\ # I would like to comment here
cos(x)
an error will occur:
gnuplot> plot\
> sin(x),\ # I would like to comment here
^
invalid character \
So it’s better to be careful and respect the rule “anywhere it makes sense to work” while using #
comments.