opensource.com Open in urlscan Pro
2a04:4e42:200::645  Public Scan

URL: https://opensource.com/alternatives/matlab
Submission: On May 14 via manual from DZ — Scanned from DE

Form analysis 3 forms found in the DOM

GET /site-search

<form action="/site-search" method="get" id="views-exposed-form-acquia-search-page" accept-charset="UTF-8">
  <div class="form--inline clearfix">
    <div class="js-form-item form-item js-form-type-textfield form-type-textfield js-form-item-search form-item-search">
      <label for="edit-search">Search</label>
      <input placeholder="Search" data-drupal-selector="edit-search" type="text" id="edit-search" name="search" value="" size="30" maxlength="128" class="form-text">
    </div>
    <div data-drupal-selector="edit-actions" class="form-actions js-form-wrapper form-wrapper" id="edit-actions"><input data-drupal-selector="edit-submit-acquia-search" type="submit" id="edit-submit-acquia-search" value="Search"
        class="button js-form-submit form-submit">
    </div>
  </div>
</form>

POST /alternatives/matlab

<form class="poll-view-form-2261 poll-view-form" data-drupal-selector="poll-view-form-2261" action="/alternatives/matlab" method="post" id="poll-view-form-2261" accept-charset="UTF-8">
  <div class="poll">
    <div class="total"> 20656 votes tallied </div>
    <dl>
      <dt class="choice-title not-current-selection">Yes.</dt>
      <dd class="choice-result not-current-selection">
        <div class="bar" data-max="20656" data-min="0" data-choice="Yes." data-value="15261">
          <div style="width: 74%" class="foreground"></div>
        </div>
        <div class="percent">74% (15261 votes)</div>
      </dd>
      <dt class="choice-title not-current-selection">No, I used a proprietary alternative.</dt>
      <dd class="choice-result not-current-selection">
        <div class="bar" data-max="20656" data-min="0" data-choice="No, I used a proprietary alternative." data-value="481">
          <div style="width: 2%" class="foreground"></div>
        </div>
        <div class="percent">2% (481 votes)</div>
      </dd>
      <dt class="choice-title not-current-selection">No, I used an open source alternative.</dt>
      <dd class="choice-result not-current-selection">
        <div class="bar" data-max="20656" data-min="0" data-choice="No, I used an open source alternative." data-value="1417">
          <div style="width: 7%" class="foreground"></div>
        </div>
        <div class="percent">7% (1417 votes)</div>
      </dd>
      <dt class="choice-title not-current-selection">No, I didn't use a numerical computing platform.</dt>
      <dd class="choice-result not-current-selection">
        <div class="bar" data-max="20656" data-min="0" data-choice="No, I didn't use a numerical computing platform." data-value="3497">
          <div style="width: 17%" class="foreground"></div>
        </div>
        <div class="percent">17% (3497 votes)</div>
      </dd>
    </dl>
    <h3 class="poll-question">Did you use MATLAB in school?</h3>
  </div>
  <input autocomplete="off" data-drupal-selector="form-zlbxdkv-nj-mgni1sh7uqjwoypwcoapmvmmebemlv5e" type="hidden" name="form_build_id" value="form-ZLbxDkV-nJ_Mgni1Sh7UqJWoypwCOAPmVMmEBemLV5E">
  <input data-drupal-selector="edit-poll-view-form-2261" type="hidden" name="form_id" value="poll_view_form_2261">
</form>

POST /alternatives/matlab

<form id="mastodon-form" class="mastodon-form" data-drupal-selector="mastodon-form" action="/alternatives/matlab" method="post" accept-charset="UTF-8">
  <div class="js-form-item form-item js-form-type-textfield form-type-textfield js-form-item-mastodon-url form-item-mastodon-url">
    <label for="edit-mastodon-url">Location of your Mastodon instance:</label>
    <input data-drupal-selector="edit-mastodon-url" type="text" id="edit-mastodon-url" name="mastodon_url" value="" size="60" maxlength="128" class="form-text">
  </div>
  <input autocomplete="off" data-drupal-selector="form-rhxceznl2usz7vwbdt2ew-iep2-qc5f2hyjjofamzxa" type="hidden" name="form_build_id" value="form-rhxceznL2Usz7VWbDt2EW_ieP2-qc5F2hyjjOFamZxA">
  <input data-drupal-selector="edit-mastodon-form" type="hidden" name="form_id" value="mastodon_form">
  <div data-drupal-selector="edit-actions" class="form-actions js-form-wrapper form-wrapper" id="edit-actions"><input data-query="?url=https://red.ht/2dCaSSU&amp;text=5 open source alternatives to MATLAB | OpenSource.com"
      data-drupal-selector="edit-submit" type="submit" id="edit-submit" name="op" value="Toot" class="button button--primary js-form-submit form-submit">
  </div>
</form>

Text Content

We use cookies on our websites to deliver our online services. Details about how
we use cookies and how you may disable them are set out in our Privacy
Statement. By using this website you agree to our use of cookies. ×

Skip to main content


USER ACCOUNT MENU

 * Log in
 * Sign Up
 * Facebook
 * Twitter
 * RSS




MAIN NAVIGATION

 * Articles
   * Linux
     * Command line
   * Kubernetes
   * Programming
     * Go
     * JavaScript
     * Python
   * Containers
   * Sysadmin
   * DevOps
   * Gaming
   * Hardware
     * 3D printing
     * Arduino
     * Raspberry Pi
   * Government
   * Law
   * Open Organization
     * What is an open organization?
     * What is an open decision?
 * Resources
   * What is open source?
     * The open source way
   * Projects and applications
   * Organizations
   * Cloud technology
     * Ansible
     * Big data
     * Data science
     * Docker
     * Git
     * Internet of things
     * Java
     * Kubernetes
     * Linux containers
     * Microservices
     * OpenStack
     * Python
       * Python GUI frameworks
       * Python IDEs
       * Python template libraries
       * Python web scrapers
     * Software defined networking
     * Virtualization
   * Open source alternatives
     * Alternatives to Acrobat
     * Alternatives to AutoCAD
     * Alternatives to Dreamweaver
     * Alternatives to Gmail
     * Alternatives to MATLAB
     * Alternatives to Minecraft
     * Alternatives to Google Photos
     * Alternatives to Photoshop
     * Alternatives to Skype
     * Alternatives to Slack
     * Alternatives to Trello
     * More...
   * Linux
 * Downloads
   * Cheat sheets
   * DevOps guides
   * Programming guides
   * Sysadmin guides
   * eBooks
   * Open Source Yearbook
   * Open Organization series
 * Community
   * About Opensource.com
     * Welcome to the Opensource.com community
     * Meet the team
     * Create an account
     * Rules for comments and discussions
     * Correspondent Program
     * Frequently Asked Questions
   * Contribute to Opensource.com
     * Opensource.com style guide
     * Writing topics
   * Contact Us
 * Search
   

x


SUBSCRIBE TO OUR NEWSLETTER.

Stay on top of the latest thoughts, strategies and insights from enterprising
peers.




5 OPEN SOURCE ALTERNATIVES TO MATLAB

If you're looking for scientific computing software, but can't afford the
leading proprietary solution, check out these open source options.
By
Jason Baker (Advisor, Red Hat)
|
Seth Kenlon (Team, Red Hat)
May 1, 2021 | 44 Comments | %t min read
23 readers like this
23 readers like this

Image by:

João Trindade. Modified by Jason Baker. CC BY-SA 2.0.

20656 votes tallied
Yes.

74% (15261 votes)
No, I used a proprietary alternative.

2% (481 votes)
No, I used an open source alternative.

7% (1417 votes)
No, I didn't use a numerical computing platform.

17% (3497 votes)


DID YOU USE MATLAB IN SCHOOL?

Editor's note: This article was originally published in June 2016, and has been
updated to provide some additional options which you may wish to consider.

For many students in mathematics, physical sciences, engineering, economics, and
other fields with a heavy numeric component, MATLAB is their first introduction
to programming or scientific computing in general.



More Great Content

 * Free online course: RHEL technical overview
 * Learn Advanced Linux Commands
 * Download Cheat Sheets
 * Find an Open Source Alternative
 * Read Top Linux Content
 * Check out open source resources

It can be a good tool for learning, although (in my experience) many of the
things that students and researchers use MATLAB for are not particularly
demanding calculations; rather they could easily be conducted with any number of
basic scripting tools, with or without statistical or math-oriented packages.
However, it does have a near ubiquity in many academic settings, bringing with
it a large community of users familiar with the language, plugins, and
capabilities in general.

But MATLAB is a proprietary tool. Without access to its source code, you have
limited understanding of how it works and how you can modify it. It is also
prohibitively expensive for many people outside of an academic setting, where
license fees for a single copy can reach into the thousands of dollars.

Fortunately, there are many great open source alternatives. Depending on your
exact objective, you may find one or another will better fit your specific
needs. Here are three to consider:


JULIA

Julia is a dynamically typed programming language featuring Lisp-style macros,
built-in primitives for parallel computing, and functions designed for matrix
manipulation, data visualization, and much more. It's designed to feel like a
scripting language rather than a C-style programming-language and even has an
interactive mode (REPL), and can be embedded into other languages through its
embedding API.

Users of Julia have many reasons for loving its syntax and capabilities, but
some of the popular examples include its broadcasting feature, which lets you
apply a function to one or more arrays without a writing a complex loop, its
simple array functions that let you rotate and reshape arrays, matrix
transforms, autodiff, native Unicode support, integrated unit testing, easy
paralellisation, and all-round simpler syntax with no loss of functionality (and
improved code efficiency.)

Julia has an active community around its development and its use, so it's also
been tailored for domain-specific purposes, including image processing
(JuliaImages), biology (BioJulia), quantum physics (QuantumBFS), nonlinear
dynamics (JuliaDynamics), economics (QuantEcon), astronomy (JuliaAstro) and
more.

Julia is licensed under the MIT license, and can be downloaded from
julialang.org.


GNU OCTAVE

GNU Octave may be the best-known alternative to MATLAB. In active development
for almost three decades, Octave runs on Linux, Windows, and Mac—and is packaged
for most major distributions. If you're looking for a project that is as close
to the actual MATLAB language as possible, Octave may be a good fit for you; it
strives for exact compatibility, so many of your projects developed for MATLAB
may run in Octave with no modification necessary.

Octave has many different choices available for a front-end interaction outside
of the default that now ships with version 4; some resemble MATLAB's interface
more than others. Octave's Wikipedia page lists several options.

Octave is licensed under the GPL, and its source code can be found on the GNU
download site.


NUMPY

NumPy is the main package for scientific computing with Python (as its name
suggests). It can process N-dimensional arrays, complex matrix transforms,
linear algebra, Fourier transforms, and can act as a gateway for C and C++
integration. It's been used in the world of game and film visual effect
development, and is the fundamental data-array structure for the SciPy Stack, an
ecosystem of Python-based math, science, and engineering software. NumPy is
licensed under the BSD license, and packages are available for Linux, Windows,
and Mac OS X.


SCILAB

Scilab is another open source option for numerical computing that runs across
all the major platforms: Windows, Mac, and Linux included. Scilab is perhaps the
best known alternative outside of Octave, and (like Octave) it is very similar
to MATLAB in its implementation, although exact compatibility is not a goal of
the project's developers.

Scilab is distributed as open source under the GPL-compatible CeCILL license,
and its source code is available on the project website.


SAGE

SageMath is another open source mathematics software system that might be a good
option for those seeking a MATLAB alternative. It's built on top of a variety of
well-known Python-based scientific computing libraries, and its own language is
syntactically similar to Python. It has many features including a command-line
interface, browser-based notebooks, tools for embedding formulas in other
documents, and of course, many mathematical libraries.

SageMath is available under a GPL license, and its source code can be found on
the project website.

--------------------------------------------------------------------------------

This list only scratches the surface of tools that researchers and students may
choose to use as open source alternatives to MATLAB. R, Julia, Python, and other
standard programming languages might be a good fit for you, depending on your
exact needs. Some other open source tools you may want to consider include: 

 * Genius Mathematic Tool, an actively developed calculator program and research
   tool. It is written in Genius Extension Language for Linux and Unix computers
   and is available under the GPL GNU license.
 * Maxima, another frequently updated alternative to MATLAB. It's based
   on Macsyma, a "legendary computer algebra system" developed at MIT in the
   1960s, can be compiled on Linux, Mac OS X, and Windows, and is available
   under GPLv2.
 * SymPy, another BSD-licensed Python library for symbolic mathematics. It can
   be installed on any computer running Python. It aims to become a full
   computer algebra system; has an active development community with regular
   releases; and is used in many other projects (including SageMath, above). 

Have you used any of these or other tools as alternatives to MATLAB? Which one
do you prefer and why? Let us know in the comments below.

What to read next
Tags
Education
Science
Analytics and metrics
Jason Baker

I use technology to make the world more open. Linux desktop enthusiast.
Map/geospatial nerd. Raspberry Pi tinkerer. Data analysis and visualization
geek. Occasional coder. Sysadmin. Web maker. Red Hatter since 2013.
More about me
Seth Kenlon

Seth Kenlon is a UNIX geek, free culture advocate, independent multimedia
artist, and D&D nerd. He has worked in the film and computing industry, often at
the same time.
More about me


44 COMMENTS

These comments are closed, however you can Register or Login to post a comment
on another article.
sfsdf | June 9, 2016

GNU Octave has started to ship with a frontend user interface by default
beginning with version 4.

Jason Baker | June 9, 2016

Thanks, updated!

In reply to GNU Octave has started to by sfsdf (not verified)

sfsdf | June 10, 2016

Thanks for the update.
But I don't see a mention of Octave having it's own official GUI now with
version 4.

In reply to Thanks, updated! by Jason Baker

Joel Goldstick | June 9, 2016

python has very popular numpy library

Seth Kenlon | June 9, 2016

That's what I used, too. Er, use.

In reply to python has very popular numpy by Joel Goldstick (not verified)

Don Watkins | June 9, 2016

Very interesting article Jason. I shared it far and wide with Edtech and OER
people.

Tom2015 | June 9, 2016

Just to say that I ticked the "No, I didn't use a numerical computing platform."
as I dont think they even existed when I was at school, or Uni come to that.

apostolos tapsas | June 9, 2016

i don't know if is opensource but the R programming laguage is good as matlab.

Steaphany | June 9, 2016

Check out Maxima, it 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.

http://maxima.sourceforge.net/

Firstbyte | June 9, 2016

The article does a good job at attempting to come out with open source math and
numerical tools that could be alternatives to well-known proprietary packages.
It would be helpful to mention well-known educational establishments,
organizations and even corporate bodies that use these open source tools.
Institutions in the so-called Third World would not have problems with open
source software if they (institutions) could source help from established
sources.

The fear of being left with experimental projects -with infrequent updates- or
sometimes even defunct projects, leave educational institutions in the Third
World to standardize on proprietary packages, whose
developers/publishers/marketers, as the author rightly pointed out, offer
steeply reduced educational licenses.

In the case of open source tools that offer compatiblity with proprietary
counterparts, the above risk is reduced, whereas in the case of those
incompatible withe their proprietary peers, Third World educational institutions
adopting such open source tools are left in the cold.

jxjl | June 9, 2016

Python + SciPy stack is IMO the only competitive alternative, unfortunatelly for
windows users, there is no easy way, how to install it

SamL | June 10, 2016

For those wanting to use the Python+SciPy stack on Windows (or elsewhere) the
Anaconda package by Continuum is well packaged, and installs as a stand-alone
python install, which makes it much easier to manage on Windows. The associated
Conda package manager is easy to work with as well.

In reply to Python + SciPy stack is IMO by jxjl (not verified)

DocJ | June 10, 2016

The Anaconda installation from Continuum Analytics makes for a very easy
install, even on Windows.

In reply to Python + SciPy stack is IMO by jxjl (not verified)

palle | June 10, 2016

In order to be fair here: Are you aware of the home use license of MathWorks
products, which is approx. 100$? Of course, it's still not open source ;)

Scott Jones | June 10, 2016

From all I've seen, I think Julia would be a very good (and better performing)
alternative to MATLAB. It is MIT licensed, not GPL, so you won't have any
problems using it for commercial projects (which I am currently doing).

Tom2015 | November 3, 2017

You shouldn't have any commercial problems using any of the afore mentioned
apps. The only restrictions are for changing the source code of the apps.

In reply to From all I've seen, I think by Scott Jones (not verified)

John Gibson | June 10, 2016

If you're looking to replace Matlab with something free and better, look to the
Julia programming language, http://julialang.org. Julia is a general-purpose,
open-source language aimed squarely at scientific computation, with the
high-level feel of Python, the numerical ease-of-use of Matlab, the speed of
compiled C, and the meta-programming CS sophistication of Lisp. It's a killer
combination of capabilities that opens a whole new world of possibility in
scientific computing.

Mee | November 3, 2017

I was very suprised that Julia was not mentioned. Most of Julia, the packages
are written in Julia itself, so unlike R you don't need to know C in addition.
The syntax is as easy if not easier than Python, it is faster, it is just one
thing that can do all that you need. However, 1.0 has yet to come out, although
it might do so this year, and many things are not set yet.

In reply to If you're looking to replace by John Gibson (not verified)

Antonello Lobianco | May 15, 2021

As of today (2021) I would say with no doubts that Julia _is_ the best
alternative to Matlab, as for a very similar (but not, and not aimed to be
equal) syntax brings modern designs, computational efficiency and already more
"toolboxes" (packages) than Matlab.
The only exception for me is if one wants to retain the maximum source
compatibility, then Octave could also be considered.

In reply to I was very suprised that by Mee (not verified)

Seth Kenlon | May 16, 2021

Thanks for this comment. I agree, Julia is a very notable alternative, with lots
of features and functions that impact a lot of different use-cases. I've added
it to the list.

In reply to As of today (2021) I would by Antonello Lobianco

Ajinkya N. Pathak | November 5, 2017

Interesting and very informative article regarding MATLAB alternatives. In
college days, earlier we were introduce to MATLAB but later on when we shift on
to Linux platform we prefer to use Scilab. Now, I perfer R language for
Statistical operations.

Stefan Mochnacki | November 9, 2017

It's "Numpy", not Nympy. For asronomy, the full SciPy environment is enahance
with astropy, and is conveniently installed under Anaconda as "astroconda". This
appears to be the currently favoured free astronomy environment, succeeding the
IRAF and Python 2.7 oriented Ureka collection.

Jason Baker | November 10, 2017

Sorry, typo was introduced in editing. Fixed!

In reply to It's "Numpy", not Nympy. For by Stefan Mochnacki (not verified)

agathi | January 14, 2018

hello

agathi | January 14, 2018

i am student and i want to use open source for my studies

Seth Kenlon | January 15, 2018

There are lots of great open source tools for studying, agathi. One great way to
learn is to run Linux on your school laptop, and systematically explore your
distribution's software repository. A great one to start out on is
http://ubuntu.com

In reply to i am student and i want to by agathi (not verified)

Igor | February 10, 2018

I looking to free replace Simulink (part of Matlab).

slel | February 18, 2018

See suggestions at https://alternativeto.net/software/simulink/

In reply to I looking to free replace by Igor (not verified)

Falconando | February 27, 2018

Please try Scilab/Xcos. Xcos is the Simulink alternative.

In reply to I looking to free replace by Igor (not verified)

mikelutta | March 29, 2018

ipython/sympy

Kumar B | April 28, 2018

Great tools. Easily explained. My favorite one among those is numpy in python

Rami Wissa | May 28, 2018

I do a lot of math and I thought it could be useful instead having to write a
program for every problem.

Mayank Bhargava | June 25, 2018

Can I Simulink these softwares?

Armstrong Foundjem | January 19, 2019

Python has libraries that will outperform marlin in most computational problems.
Also, most of the popular deep learning packages are python based.

I love Octave too but just can’t do without python.

Robert A Walker | April 3, 2019

A lot of the numerical routines will not run on BSD. So i'll have to chose
carefully

Wout | April 9, 2019

Thank you, this is a very helpful article to me!

JanDe12 | April 19, 2019

I used Sage a lot, but don't use it too much these days.

sumanrajput | September 4, 2019

Your website is so cool. I'm impressed by the details that you have on this web
site. You have taught me so much about open source and Linux!

viparushiroy | September 9, 2019

Nice and interesting post. Thank You! For sharing such a great article, I like
to read your information you have mentioned in this article are helpful to me!!

I have installed Mageia Linux and am eagar to explore open source.

Seth Kenlon | May 27, 2020

Mageia's a great distribution. I quite enjoy using it.

Best of luck!

In reply to Nice and interesting post. by viparushiroy

Ariel Leung | April 16, 2020

Just saw on Twitter that SageMath has a brilliant package for LaTex.

Ariel | May 27, 2020

Julia promotes itself as being friendly to MATLAB users, and I personally find
it true.

Seth Kenlon | May 27, 2020

I've not done anything with Julia yet, but it's been on my list for a while.

In reply to Julia promotes itself as by Ariel (not verified)

Andrew | February 4, 2021

Designmodo mentioned some new tools in their new article here
https://designmodo.com/google-analytics-alternatives/

It may be helpful because there are few absolutely free tools.


RELATED CONTENT

When open source meets academic publishing: Platinum open access journals
How to join Apache Cassandra during Google Summer of Code
New Trailblazers Fellowships power open hardware in academia
This work is licensed under a Creative Commons Attribution-Share Alike 4.0
International License.
LinkedInTwitterFacebookWhatsAppEmailRedditMastodon
Location of your Mastodon instance:



SUBSCRIBE TO OUR WEEKLY NEWSLETTER



Privacy Statement


ABOUT THIS SITE

The opinions expressed on this website are those of each author, not of the
author's employer or of Red Hat.

Opensource.com aspires to publish all content under a Creative Commons license
but may not be able to do so in all cases. You are responsible for ensuring that
you have the necessary permission to reuse any work on this site. Red Hat and
the Red Hat logo are trademarks of Red Hat, Inc., registered in the United
States and other countries.

A note on advertising: Opensource.com does not sell advertising on the site or
in any of its newsletters.


CONTACT

Follow us @opensource.com on Twitter

Like Opensource.com on Facebook

Watch us at Opensource.com

Follow us on Mastodon

RSS Feed



Copyright ©2022 Red Hat, Inc.


LEGAL

 * Privacy Policy
 * Terms of use
 * Contact