Notebook interface внутри MATLAB

Многие учёные, работающие с данными любят писать код не в виде голых скриптов, а используя так называемый notebook interface (типичный пример - Jupyter Notebook). Удобно это прежде всего потому, что ваш код становится более понятным, комментарии к коду хорошо читаются, а главное, прямо между строк можно вставлять результаты выполнения кода, например, полученные графики и построения.

В 2016 году MATLAB тоже создал свой вариант такого интерфейса, но на самом деле я пока не часто вижу, что им кто-то пользуется. Одна из причин (именно она побудила меня написать эту заметку) - не все знают об этой возможности MATLAB, хотя найти её совсем не сложно, она буквально постоянно маячит перед глазами (если у вас, конечно, установлен свежий MATLAB).

Итак, Notebook interface в MATLAB называется Live Editor, в которм можно создавать "живые скрипты" (Live Script). Создать такой скрипт можно также, как вы создаёте обычный скрипт (m-файл). На вкладке HOME для этого отведена специальная кнопка "new live script'. Если кнопки не окажется, поищите её под кнопкой "New":

 Notebook interface (like Jupyter Notebook) in Matlab

В результате создастся пустой файл с расширением mlx. Попробуем заполнить его и посмотреть как будет выглядеть результат:

 Notebook interface (like Jupyter Notebook) in Matlab -live script
Справа расположено окно Workspace, я его захватил в скриншоте, но Live Script - это только то, что посередине.

Есть и другой вид отображения (вид вы можете выбрать в правой верхней части окна скрипта):

Matlab live script

Сохранять результат работы можно не только в .mlx, но и экспортироватьв pdf или html или LaTeX.

В целом, мои ощущения от работы с Live Script неоднозначные. Мне он понравился намного меньше, чем Jupyter Notebook, который на порядок приятнее в работе. Но думаю, что нас ещё ждут усовершенствования. Кроме того мне показалось что Live Script пока слишком тормозной. Но, если вы никуда не спешите, то почему бы и не пользоваться.

 telegram

Чтобы не пропустить новые материалы с рецептами по работе с океанологическими данными, подпишитесь на канал в Telegram: https://t.me/koldunovaleksey