Learn with Linux: Master Your Math with These Linux Apps

Learn with Linux: Maths

Linux offers great educational software and many excellent tools to aid students of all grades and ages in learning and practicing a variety of topics, often interactively. The “Learn with Linux” series of articles offers an introduction to a variety of educational apps and software.

Mathematics is the core of computing. If one would expect a great operating system, such as GNU/Linux, to excel in and discipline, it would be Math. If you seek mathematical applications, you will not be disappointed. Linux offers many excellent tools that will make Mathematics look as intimidating as it ever did, but at least they will simplify your way of using it.


Gnuplot is a command-line scriptable and versatile graphing utility for different platforms. Despite its name, it is not part of the GNU operating system. Although it is not freely licensed, it’s free-ware (meaning it’s copyrighted but free to use).

To install gnuplot on an Ubuntu (or derivative) system, type

sudo apt-get install gnuplot gnuplot-x11

into a terminal window. To start the program, type


You will be presented with a simple command line interface


into which you can start typing functions directly. The plot command will draw a graph.

Typing, for instance,

plot sin(x)/x

into the gnuplot prompt, will open another window, wherein the graph is presented.


You can also set different attributes of the graphs in-line. For example, specifying “title” will give them just that.

plot sin(x) title 'Sine Function', tan(x) title 'Tangent'


You can give things a bit more depth and draw 3D graphs with the splot command.

splot sin(x*y/20)


The plot window has a few basic configuration options,


but the true power of gnuplot lies within its command line and scripting capabilities. The extensive full documentation of gnuplot can be found here¬†with a great tutorial for the previous version on the Duke University’s website.


Maxima is a computer algebra system developed from the original sources of Macsyma. According to its SourceForge page,

“Maxima is a system for the manipulation of symbolic and numerical expressions, including differentiation, integration, Taylor series, Laplace transforms, ordinary differential equations, systems of linear equations, polynomials, sets, lists, vectors, matrices and tensors. Maxima yields high precision numerical results by using exact fractions, arbitrary-precision integers and variable-precision floating-point numbers. Maxima can plot functions and data in two and three dimensions.”

You will have binary packages for Maxima in most Ubuntu derivatives as well as the Maxima graphical interface. To install them all, type

sudo apt-get install maxima xmaxima wxmaxima

into a terminal window. Maxima is a command line utility with not much of a UI, but if you start wxmaxima, you’ll get into a simple, yet powerful GUI.


You can start using this by simply starting to type. (Hint: Enter will add more lines; if you want to evaluate an expression, use “Shift + Enter.”)

Maxima can be used for very simple problems, as it also acts as a calculator,


and much more complex ones as well.


It uses gnuplot to draw simple


and more elaborate graphs.


(It needs the gnuplot-x11 package to display them.)

Besides beautifying the expressions, Maxima makes it possible to export them in latex format, or do some operations on the highlighted functions with a right-click context menu,


while its main menus offer an overwhelming amount of functionality. Of course, Maxima is capable of much more than this. It has an extensive documentation available online.


Mathematics is not an easy subject, and the excellent math software on Linux does not make it look easier, yet these applications make using Mathematics much more straightforward and productive. The above two applications are just an introduction to what Linux has to offer. If you are seriously engaged in math and need even more functionality with great documentation, you should check out the Mathbuntu project.

Attila Orosz
Attila Orosz

Attila is a writer, blogger and author with a background in IT management. Using GNU/Linux systems both personally and professionally, his advice stems from 10+ years of hands on experience. In his free time he also runs the popular Meditation for Beginners blog.

Subscribe to our newsletter!

Our latest tutorials delivered straight to your inbox