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. These include MATLAB, Maple, and Mathematica. 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 14 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 your leaning towards 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, gnuplot, ggplot2, and ROOT, but the other 10 applications are all worthy of investigation.

Now, let’s explore the 14 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 gnuplot Command-line driven interactive plotting program ggplot2 Powerful R package for declaratively creating graphics ROOT Solves the data analysis challenges of high-energy physics Veusz Scientific plotting and graphing program PLplot Scientific plotting library Octave Built-in plotting and visualization tools Ctioga Command-line plotting utility DataMelt Produces professional graphics with libraries for data manipulation LabPlot Data plotting and function analysis tool for KDE GLE Graphics Layout Engine SciDAVis Scientific Data Analysis and Visualization RLPlot Generate publication quality graphs Genius Educational tool in mathematics and for research

Return to our complete collection of recommended free and open source software including our latest additions.

Related articles