A plotting tool is computer software which helps to analyze and visualize data, often of a scientific nature. Using this type of software, users can generate plots of functions, data and data fits. Software of this nature typically includes additional functionality, such as data analysis functions including curve fitting.
A good plotting tool is very important for generating professional looking graphics for inclusion in academic papers. However, plotting tools are not just useful for academics, engineers, and scientists. Many users will need to plot graphs for other purposes such as presentations.
Fortunately, Linux is well endowed with plotting software. There are some heavyweight commercial Linux applications which include plotting functionality.Without access to their source code, you have limited understanding of how the software functions, and how to change it. The license costs are also very expensive. And we are fervent advocates of open source software. The purpose of this article is to help promote open source plotting tools that are available.
To provide an insight into the quality of software that is available, we have compiled a list of 17 excellent plotting tools. Many of the applications are very mature. For example, gnuplot has been in development since the mid-1980s.
The choice of plotting software may depend on which programming language you prefer. For example, if you love Python, matplotlib is an ideal candidate as it’s written in, and designed specifically for Python. Whereas, if you’re keen on the R programming language, you’ll probably prefer ggplot2, which is one of the most popular R packages. With good reason, it offers a powerful model of graphics that removes a lot of the difficulty in making complex multi-players graphics. R does come with “base graphics” which are the traditional plotting functions distributed with R. But gpplot2 takes graphics to the next level.
Hopefully, there will be something of interest for anyone interested in producing high quality graphs. We highly recommend matplotlib, ggplot2, gnuplot, and ROOT, but the others are all worth investigating.
Let’s explore the 17 plotting tools at hand. For each title we have compiled its own portal page, a full description with an in-depth analysis of its features, a screenshot of the software in action, together with links to relevant resources.
Plotting Tools | |
---|---|
matplotlib | Python based plotting system in a style similar to Matlab |
ggplot2 | Powerful R package for declaratively creating graphics |
gnuplot | Command-line driven interactive plotting program |
ROOT | Solves the data analysis challenges of high-energy physics |
PLplot | Scientific plotting library |
Octave | Built-in plotting and visualization tools |
Veusz | Scientific plotting and graphing program |
DataMelt | Produces professional graphics with libraries for data manipulation |
Ctioga | Command-line plotting utility |
LabPlot | Data plotting and function analysis tool for KDE |
GLE | Graphics Layout Engine |
RLPlot | Generate publication quality graphs |
SciDAVis | Scientific Data Analysis and Visualization |
PyVista | 3D plotting and mesh analysis |
ZeGrapher | 2D math and data plotter |
Genius | Educational tool in mathematics and for research |
Plots | Simple graph plotting app for GNOME |
This article has been revamped in line with our recent announcement.
Read our complete collection of recommended free and open source software. Our curated compilation covers all categories of software. The software collection forms part of our series of informative articles for Linux enthusiasts. There are hundreds of in-depth reviews, open source alternatives to proprietary software from large corporations like Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. There are also fun things to try, hardware, free programming books and tutorials, and much more. |