I find Matlab great, and for the most part it is my go-to scientific software package. Unfortunately if you don’t have access to a license, or your license server connection isn’t so great, using Matlab may not be so practical.
Lately I’ve found that software packages based on python have been getting better and better at completely replacing Matlab in my computing work. Here is my list of Python Alternatives to Matlab.
Python Alternatives to Matlab
Python is a powerful yet simple, versatile little language that has found it’s place in the centre of the Matlab alternative selection. Scientific use of python has grown over the years, and for some time there have been packages such as scipy, numpy, and matplotlib that help scientific scripting, analysis and visualisation.
Despite the strength of these ‘back-end’ packages I had found that, on windows at least, python was let down by not having an easy to use interface, like that found in matlab. Thankfully these problems now seem to have been solved and there are now a selection of different suites of programs, based on python, but offering a matlab-like level of scientific and numerical programming.
Winpython was the first time I encountered the Spyder interface. As someone who likes the matlab-style all in one window, this was great. Perhaps not as polished as the other python alternatives to matlab suggested here, but you may find the lack of corporate backing appealing.
Check out Anaconda (number 3, below) if you like the spyder interface, but would prefer a more polished distribution.
2. Enthought Canopy
The Enthought Canopy (formerly Enthought Python Distribution) was the first scientific python distribution that really made me think a python-based alternative to Matlab might be possible.
Enthought Canopy has its own ‘graphical analysis environment’ that behaves in much the same way as the matlab interface you might be familiar with.
Crucially Enthought Canopy also comes with its own package manager that allows you to find and install various python packages to help you process and analyse your data.
In many ways Anaconda is similar to Enthought Canopy. It comes bundled with a range of scientific and numerical packages such as numpy and matplotlib, as well as having it’s own conda package manager. The package manager makes it easy to install existing packages, external packages as whl files or from binstar.org.
Check out this playlist on “The best way to learn Python“, using Anaconda.