Install Jupyter-MATLAB

Prerequisites

  • We assume that you are comfortable with Linux command line. If not, checkout out Ryans’ tutorial for example.
  • We also assume that you already have MATLAB installed and working. This tutorial is tested successfully with MATLAB R2017a on Mac/Linux/Windows.

Install the standard Jupyter-Python notebook

Jupyter relies on Python, so the first thing is to install Anaconda, a popular distribution of scientific Python. Experienced users prefer Miniconda to only install necessary packages, but the standard Anaconda is more convenient for beginners, especially on Windows.

Once you have conda installed, you should test the standard IPython notebook. For example, in the notebook execute

In [1]:
%%python
# I am in a MATLAB kernel so need to add the above IPython magic to use the python kernel instead.
# You can skip this magic in a standard python kernel
print('hello from Python')
hello from Python

On Mac/Linux

(1) Python-side configuration

Open the terminal, execute the following command to check your installation of anaconda and python:

which conda pip python

All of them should be inside anaconda’s directory “…/anaconda3/bin”

MATLAB R2017a only interfaces with Python3.5, so we need to create a new virtual environment:

conda create -vv -n jmatlab python=3.5 jupyter

Enter this Python environment. Stay in this environment when executing any terminal commands (pip, python, jupyter) for rest of this tutorial.

source activate jmatlab

Then, install the Matlab kernel for Jupyter.

pip install matlab_kernal

python -m matlab_kernel install

Check if the kernel is installed correctly

jupyter kernelspec list

You should see both Python and MATLAB.

(2) MATLAB-side configuration

Now we need to expose the MATLAB executable to Jupyter.

Find your MATLAB directory. On Mac it will be like “/Applications/MATLAB_R2017a.app”.

Go to the “extern/engines/python” subdirectory and install the Python engine.

cd “/Applications/MATLAB_R2017a.app/extern/engines/python”

python setup.py install

(3) Start Jupyter notebook

cd your_working_directory

jupyter notebook

Now you should see both Python and MATLAB options when launching a new notebook. Check if the MATLAB kernel is working by:

In [2]:
disp('hello from MATLAB')
hello from MATLAB

See Use MATLAB in Jupyter Notebooks for more usages.

On Windows

Windows is always tricker when it comes to configuring software, but all you need is basically translating Linux commands into Windows commands.

Commonly used Linux/Mac <-> Windows command mappings are:

  • cd folder/subfolder <-> cd folder\subfolder (type e: to change the disk E)
  • pwd <-> cd
  • ls <-> dir

You might also need to set environment variables if commands like “python” and “conda” cannot be recognized. Add the following directories to the PATH variable:

  • path_to_Anaconda_dir\
  • path_to_Anaconda_dir\Scripts\

All steps are exactly the same as in the Mac/Linux section. Windows is indeed a litte bit annoying, but it doesn’t prevent Jupyter+MATLAB from working. Please contact me if you have any troubles.