GNU plotutils is a set of
free software
Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, no ...
command-line tools and
software libraries
In computer science, a library is a collection of non-volatile resources used by computer programs, often for software development. These may include configuration data, documentation, help data, message templates, pre-written code and subro ...
for generating 2D plot graphics based on data sets. It is used in projects such as
PSPP
PSPP is a free software application for analysis of sampled data, intended as a free alternative for IBM SPSS Statistics. It has a graphical user interface and conventional command-line interface. It is written in C and uses GNU Scientific Lib ...
and
UMLgraph, and in many areas of academic research, and is included in many
Linux
Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which ...
distributions such as
Debian
Debian (), also known as Debian GNU/Linux, is a Linux distribution composed of free and open-source software, developed by the community-supported Debian Project, which was established by Ian Murdock on August 16, 1993. The first version of D ...
.
Windows
Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for serv ...
and
Mac OS X
macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac (computer), Mac computers. Within the market of ...
versions are also available. The library provides bindings for the
C and
C++
C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significan ...
languages. Its stand-alone command-line tools can generate graphs and perform numerical calculation of spline curves and systems of ordinary differential equations. Plotutils is a
GNU package
A number of notable software packages were developed for, or are maintained by, the Free Software Foundation as part of the GNU Project.
What it means to be a GNU package
Summarising the situation in 2013, Richard Stallman identified nine aspects ...
and is distributed under a
free software licence
A free-software license is a notice that grants the recipient of a piece of software extensive rights to modify and redistribute that software. These actions are usually prohibited by copyright law, but the rights-holder (usually the author) ...
, the
GPL
The GNU General Public License (GNU GPL or simply GPL) is a series of widely used free software licenses that guarantee end users the four freedoms to run, study, share, and modify the software. The license was the first copyleft for general us ...
.
History
Several utilities were inspired by
Unix
Unix (; trademarked as UNIX) is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, and ot ...
plotting utilities. A ''
graph
Graph may refer to:
Mathematics
*Graph (discrete mathematics), a structure made of vertices and edges
**Graph theory, the study of such graphs and their properties
*Graph (topology), a topological space resembling a graph in the sense of discre ...
'' utility and various plot filters were present in the first releases of Unix from
Bell Laboratories
Nokia Bell Labs, originally named Bell Telephone Laboratories (1925–1984),
then AT&T Bell Laboratories (1984–1996)
and Bell Labs Innovations (1996–2007),
is an American industrial research and scientific development company owned by mult ...
. By the time of Version 7 Unix, ''graph'', ''plot'', ''spline'', and several device-dependent versions of ''libplot'' were a standard Unix features. The first display device supported by the package was a Tektronix 611 storage scope. By the early 1980s, numerous other devices were supported.
In 1989, the first GNU versions of ''graph'', ''plot'', ''tek2plot'', ''spline'' and their respective documentation were written.
Richard Stallman
Richard Matthew Stallman (; born March 16, 1953), also known by his initials, rms, is an American free software movement activist and programmer. He campaigns for software to be distributed in such a manner that its users have the freedom to ...
further directed development of the programs and documentation. The distribution, as it stood in 1991, was distributed under the name ''GNU graphics''.
In 1995, the package was significantly expanded by writing a device-independent, standalone version of ''libplot'', and by rewriting ''graph'' from scratch, turning it into a real-time filter.
Features
Stand alone tools
*
GNU graph
GNU () is an extensive collection of free software (383 packages as of January 2022), which can be used as an operating system or can be used in parts with other operating systems. The use of the completed GNU tools led to the family of operat ...
, which plots 2-D datasets or data streams in real time.
*
GNU plot, which translates GNU Metafile format to any of the other formats.
*
GNU tek2plot, for translating
Tektronix 4010
The Tektronix 4010 series was a family of text-and-graphics computer terminals based on storage-tube technology created by Tektronix. Several members of the family were introduced during the 1970s, the best known being the 11-inch 4010 and 19-inc ...
data to any of the above formats.
*
GNU pic2plot
GNU () is an extensive collection of free software (383 packages as of January 2022), which can be used as an operating system or can be used in parts with other operating systems. The use of the completed GNU tools led to the family of operat ...
, for translating the
pic language
In computing, Pic is a domain-specific programming language by Brian Kernighan for specifying line diagrams.
The language contains predefined basic linear objects: line, move, arrow, and spline, the planar
objects box, circle, ellipse, arc, and d ...
to any of the above formats.
*
GNU plotfont
GNU () is an extensive collection of free software (383 packages as of January 2022), which can be used as an operating system or can be used in parts with other operating systems. The use of the completed GNU tools led to the family of operat ...
, for displaying character maps of the fonts that are available in the above formats.
*
GNU spline
GNU () is an extensive collection of free software (383 packages as of January 2022), which can be used as an operating system or can be used in parts with other operating systems. The use of the completed GNU tools led to the family of operat ...
, which does
spline interpolation of data.
*
GNU ode
GNU () is an extensive collection of free software (383 packages as of January 2022), which can be used as an operating system or can be used in parts with other operating systems. The use of the completed GNU tools led to the family of operat ...
, which numerically integrates a system consisting of one or more ordinary differential equations.
Supported output formats
*
X Window System
The X Window System (X11, or simply X) is a windowing system for bitmap displays, common on Unix-like operating systems.
X provides the basic framework for a GUI environment: drawing and moving windows on the display device and interacting wit ...
display
*
SVG
*
PNG
*
PNM
* pseudo-
GIF
The Graphics Interchange Format (GIF; or , see pronunciation) is a bitmap image format that was developed by a team at the online services provider CompuServe led by American computer scientist Steve Wilhite and released on 15 June 1987. ...
(using
run-length encoding
Run-length encoding (RLE) is a form of lossless data compression in which ''runs'' of data (sequences in which the same data value occurs in many consecutive data elements) are stored as a single data value and count, rather than as the original ...
rather than
LZW to avoid the past
patent issue)
*
WebCGM
Computer Graphics Metafile (CGM) is a free and open international standard file format for 2D vector graphics, raster graphics, and text, and is defined by ISO/IEC 8632.
Overview
All graphical elements can be specified in a textual source file th ...
*
Adobe Illustrator
Adobe Illustrator is a vector graphics editor and design program developed and marketed by Adobe Inc. Originally designed for the Apple Macintosh, development of Adobe Illustrator began in 1985. Along with Creative Cloud (Adobe's shift to month ...
*
PostScript
PostScript (PS) is a page description language in the electronic publishing and desktop publishing realm. It is a dynamically typed, concatenative programming language. It was created at Adobe Systems by John Warnock, Charles Geschke, Doug Br ...
*
PCL
*
HP-GL
HP-GL, short for Hewlett-Packard Graphics Language and often written as HPGL, is a printer control language created by Hewlett-Packard (HP). HP-GL was the primary printer control language used by HP plotters. It was introduced with the plotteHP-89 ...
*
xfig
Xfig is a free and open-source vector graphics editor which runs under the X Window System on most UNIX-compatible platforms.
In Xfig, figures may be drawn using objects such as circles, boxes, lines, spline curves, text, etc. It is also possib ...
See also
*
Graph (Unix)
In Unix, graph is a command-line utility used to draw plots from tabular data.
History
The graph utility, written by Douglas McIlroy, was present in the first version of Unix, and every later version, for instance:
* Unix Version 7, released ...
*
GNU Project
The GNU Project () is a free software, mass collaboration project announced by Richard Stallman on September 27, 1983. Its goal is to give computer users freedom and control in their use of their computers and computing devices by collaborati ...
*
gnuplot
gnuplot is a command-line and GUI program that can generate two- and three-dimensional plots of functions, data, and data fits. The program runs on all major computers and operating systems (Linux, Unix, Microsoft Windows, macOS, FreeDOS, an ...
References
External links
*
UMLgraphAutomated Drawing of UML Diagrams
C++ for mathematicians: an introduction for students and professionalsGNU Graphics
{{GNU
GNU Project software
Graphics libraries
Free plotting software
Free computer libraries