Content deleted Content added
Citation bot (talk | contribs) Alter: page. Add: author pars. 1-1. Removed parameters. Some additions/deletions were actually parameter name changes. | You can use this bot yourself. Report bugs here. | Suggested by Neko-chan | Category:Cross-platform free software | via #UCB_Category 351/378 |
m Undid revision 1305057388 by Bender the Bot (talk) bot error fixed |
||
(48 intermediate revisions by 34 users not shown) | |||
Line 1:
{{Short description|Command-line and GUI plotting program}}
{{distinguish|plotutils}}
{{Lowercase title}}
{{More citations needed|date=March 2012}}
Line 7 ⟶ 9:
| caption = 3D rendering of an [[ellipsoid]] by gnuplot
| released = {{Start date and age|1986|df=yes}}
| latest release version = {{wikidata|property|reference|P348}}
| latest release date = {{start date and age|{{wikidata|qualifier|P348|P577}}}}
| programming language = [[C (programming language)|C]]
| genre = [[List of graphing software|Plotting]]
| license = [[Gnuplot license|gnuplot]]<ref name="spdx" /><ref name="lice" />
|
}}
'''gnuplot''' is a [[command-line]] and [[GUI]] program that can generate two- and three-dimensional [[Plot (graphics)|plots]] of [[Function (mathematics)|function]]s, [[data]], and [[Curve fitting|data fits]]. The program runs on all major [[computer]]s and [[operating system]]s ([[Linux]], [[Unix]], [[Microsoft Windows]], [[macOS]], [[FreeDOS]], and many others).<ref>Gnuplot 5.0 Reference Manual, 2015, {{ISBN|9881443644}}</ref>
== Features ==
gnuplot can produce output directly on screen, or in many formats of graphics files, including [[Portable Network Graphics]] (PNG), [[Encapsulated PostScript]] (EPS), [[Scalable Vector Graphics]] (SVG), [[JPEG]] and many others. It is also capable of producing [[LaTeX]] code that can be included directly in LaTeX documents, making use of LaTeX's fonts and powerful formula notation abilities. The program can be used both interactively and in batch mode using scripts.<ref>{{cite web|website=Blogs.oucs.ox.ac.uk|title=How to generate graphs with gnuplot|url=http://blogs.oucs.ox.ac.uk/networks/2011/09/02/how-to-generate-graphs-with-gnuplot/|access-date=2012-07-19}}
</ref>
gnuplot can read data in multiple formats, including ability to read data on the fly generated by other programs ([[Pipe (Unix)|piping]]), create multiple plots on one image, do 2D, 3D, contour plots, parametric equations, supports various linear and non-linear coordinate systems, projections, geographic and time data reading and presentation, box plots of various forms, histograms, labels, and other custom elements on the plot, including shapes, text and images, that can be set manually, computed by script or automatically from input data.
gnuplot also provides scripting capabilities, looping, functions, text processing, variables, macros, arbitrary pre-processing of input data (usually across columns), as well as the ability to perform non-linear multi-dimensional multi-set weighted data fitting (see [[Curve fitting]] and [[Levenberg–Marquardt algorithm]]).
The gnuplot core code is programmed in [[C (programming language)|C]]. Modular subsystems for output via [[Qt (software)|Qt]], [[wxWidgets]], and LaTeX/TikZ/ConTeXt are written in [[C++]] and [[Lua (programming language)|Lua]].
[[File:Gnuplot-in-action.png|thumb|upright=1.4|gnuplot in interactive use
The code below creates the graph to the right.
<syntaxhighlight lang="gnuplot">
Line 37 ⟶ 40:
</syntaxhighlight>
[[File:Gnuplot.ogv|thumb|Sample
{{Gallery
|width=240
|height=160
|File:Gnuplot tcp analysis.png|alt2=Thousands of dots plotted, forming a pattern|A [[scatter plot]] of samples from a text file
|File:Logarithmic spiral.svg|alt3=|A logarithmic spiral
}}
The name of this program was originally chosen to avoid conflicts with a program called "newplot", and was originally a compromise between "llamaplot" and "nplot".<ref>
Support of Epidemic daily and weekly formats in Version 5.4.2 is a result of pandemic [[COVID-19_pandemic|Coronavirus]] data needs.<ref>{{Cite web |url=https://gnuplot.sourceforge.net/ReleaseNotes_5_4_2.html |title=Gnuplot Version 5.4.2 Release Notes |access-date=2021-06-08 |archive-date=2021-06-08 |archive-url=https://web.archive.org/web/20210608120649/http://gnuplot.sourceforge.net/ReleaseNotes_5_4_2.html |url-status=live }}</ref>
== Distribution terms ==
Line 56 ⟶ 61:
| publisher =
| date = 1986 – 1993, 1998, 2004
| spdx = gnuplot<ref name="spdx">{{cite web|url=https://spdx.org/licenses/gnuplot.html|title=gnuplot License|website=Spdx.org}}</ref>
| OSI approved = Yes
| Debian approved = Yes
Line 65 ⟶ 71:
}}
Despite gnuplot's name, it is not named after, part of or related to the [[GNU Project]], nor does it use the [[GNU General Public License]]. It was named as part of a compromise by the original authors, punning on ''[[gnu]]'' (the animal) and ''newplot'' (a planned name that was discarded due to already being used).<ref name="gnuplot faq">{{cite web | url=http://www.gnuplot.info/faq/faq.html#x1-70001.2 | title=1.2 How did it come about and why is it called gnuplot? |
Official source code to gnuplot is freely redistributable, but modified versions thereof are not. The gnuplot license
<blockquote>
Line 83 ⟶ 87:
* [[gretl]], a [[statistics package]] for [[econometrics]]
* JGNUPlot, a java-based GUI<ref>
* Kayali<ref>
* xldlas, an old X11 statistics package<ref>{{Cite web |url=http://linux.maruhn.com/sec/xldlas.html |title=
* gnuplotxyz, an old Windows program<ref>{{Cite web|url=http://www.uni-hamburg.de/Wiss/FB/15/Sustainability/schneider/gnuplot/|title = Home · uwe-schneider/Gnuplotxyz Wiki|website=Uni-hamburg}}</ref>
* wxPinter, a graphical plot manager for gnuplot<ref>{{cite web|title = Steingrube|url = http://www.steingrube-home.de/software_wxPinter.html|website = www.steingrube-home.de|access-date = 2015-08-21|first = Daniel S.|last = Steingrube|archive-url = https://web.archive.org/web/20151026154709/http://www.steingrube-home.de/software_wxPinter.html|archive-date = 2015-10-26|url-status = dead}}</ref>
* [[Maxima (software)|Maxima]] is a text-based [[computer algebra system]] which itself has several third-party GUIs
* [[Reduce (computer algebra system)|REDUCE]] is a text-based [[computer algebra system]]; versions using CSL have a GUI and there are several third-party GUIs
Other programs that use gnuplot include:
* [[GNU Octave]], a mathematical programming language
* statist, a terminal-based program<ref>{{Cite web|url=http://wald.intevation.org/projects/statist/|title = Wald: Statist: Project Home|website=Wald.intevation.org}}</ref>
* gplot.pl provides a simpler command-line interface.<ref>
* [http://github.com/dkogan/feedgnuplot feedgnuplot] provides a plotting of stored and realtime data from a pipe
* ElchemeaAnalytical,<ref>{{Cite web|url=https://www.elchemea.com/|title=Elchemea Analytical|website=Elchemea.com|access-date=27 June 2022}}</ref> an [[
* Gnuplot add-in for [[Microsoft Excel]]<ref>{{Cite web|url=https://sourceforge.net/projects/gnuplot-add-in-for-excel/|title=GnuPlot
* Calc, the [[GNU Emacs]] calculator<ref>{{cite web |last1=Gillespie |first1=Dave |title=The GNU Emacs Calculator |url=https://www.gnu.org/software/emacs/manual/html_node/calc/Graphics.html#Graphics |website=www.gnu.org |publisher=Free Software Foundation, Inc. |access-date=13 November 2020 |page=Graphics}}</ref>
== Programming and application interfaces ==
gnuplot can be used from various programming languages to graph data, including [[C++]] (via [http://arminms.github.io/g3p G3P]), [[Perl]] (via [[Perl Data Language|PDL]] and other [[CPAN]] packages), [[Python (programming language)|Python]] (via [https://github.com/dkogan/gnuplotlib gnuplotlib], [
gnuplot also supports [[Pipe (Unix)|piping]], which is typical of scripts.<ref>
== Gnuplot output formats ==
Gnuplot allows
* On the console, such as
* In a desktop window,
* Embedded in a web page,
* File formats designed for document processing,
== See also ==
{{Portal|Free and open-source software}}
* [[List of graphing software]]
== References ==
{{Reflist
== Further reading and external links ==
Line 123 ⟶ 127:
{{Wikibooks|gnuplot}}
{{Wikibooks|Ad Hoc Data Analysis From The Unix Command Line|Quick Plotting With gnuplot}}
▲* {{Official website|http://www.gnuplot.info/}}
* {{SourceForge|gnuplot}}
* [https://alogus.com/publishing/gnuplot5/ Gnuplot 5]: an interactive ebook about gnuplot v.5.
Line 130 ⟶ 133:
* [http://spplotters.blogspot.com/ spplotters]: a blog of gnuplot examples and tips
* [http://gnuplot-surprising.blogspot.com/ gnuplot surprising]: a blog of gnuplot examples and tips
* [https://www.gnuplot.io/ gnuplot online]: WebAssembly compiled online gnuplot v.5.x
* {{cite book|author=Philipp K. Janert|title=Gnuplot in Action|isbn=978-1933988399|publisher=Manning Publications|year=2009}}
* {{cite book|author=Lee Phillips|title=gnuplot Cookbook|isbn=978-1849517249|publisher=Packt Publishing|year=2012}}
Line 150 ⟶ 153:
[[Category:Regression and curve fitting software]]
[[Category:Software that uses wxWidgets]]
[[Category:Software that uses Qt]]
|