MATLAB LiveScriptで報告書作成
MATLAB LiveScriptとは
ソースコードと説明用の式や図をInteractiveに表示するMATLABの新たな表示形式です。
以下がMATLAB公式の説明。
ライブ スクリプトとは - MATLAB & Simulink - MathWorks 日本
Pythonをやる人にはjupyterみたいなもんといえばわかるでしょうか。
MATLABをjupyterで使うということもできますがPython環境を準備したりが面倒でしたよね。
なお,公式には2016aから対応しているとのこと。
持ってない人は買いましょう。学生は一万円くらいで2ライセンス買えます。(生協・Amazonからの購入。生協にあるなら生協の方が安いかと。)
MATLAB and Simulink Student Suite R2018a
- 出版社/メーカー: MathWorks
- メディア: DVD-ROM
- この商品を含むブログを見る
MATLAB2018のStudent版はDeep Learningを含む機械学習等にも力を入れているので以前のバージョンを持っている人も試してみると良いかもしれません。
先人の調査所感
なお,興味深い調査所感が以下にあります。実行速度が半分になる可能性があるのはたしかに厄介なのと,図を含めたファイルサイズが今の所の懸念点というのは有益な情報でした。
qiita.com
実際に書いてみよう
Jupyterのような使い方をわかっている前提で書きますが,要はテキスト用の箇所とコードを記述する用の箇所を切り替えているだけなのではじめての人でもすぐ馴染めると思います。
ファイルの作成
ライブスクリプトの拡張子は
Control+Nで作成し保存時に拡張子を指定するか,GUIメニューでライブスクリプトを選択すれば良いです。
なお,「edit **.mlx」というふうにコマンドラインで実行しても作成できるそうな。
よく使うショートカット
起動してぽちぽちいじっているとコードを書くところと説明を書くところがこのように違うことがわかります。
具体的に使いそうなショートカットは
- Alt+Enter:コード/テキストの切り替え
- Ctrl+Alt+Enter : ブロックの改行。段落替え。
- Ctrl+Alt+T:標準テキスト
- Ctrl+Alt+H:見出しテキスト
- Ctrl+Alt+L:タイトルテキスト
- Ctrl + Enter
となっています。
流れの例として,
1. Alt+Enterで「テキストモードにする」
1. Ctrl+Alt+Hで「見出し」モード。見出しを書く。
1. Ctrl+Alt+Tで「本文」モード。本文を書く。
1. Alt+Enterでコードに切り替えたり,そのまま説明を書くことを繰り返す。
1. Ctrl+Enter で段落を実行。問題なければ Ctrl+Alt+Enter で段落改行。
こんな感じでしょうか?
ライブ スクリプトのセクションの実行 - MATLAB & Simulink - MathWorks 日本
図や実行結果を載せる
普段,コマンドウィンドウに出てくる実行結果や図は右側のスペースに出てきます。
図をスクリプト内に表示させたいときは[表示] タブの [レイアウト] セクションで、[インラインで出力] ボタンをクリックします。
ライブ エディターでライブ スクリプトを作成 - MATLAB & Simulink - MathWorks 日本
一応実行コードを載せときます。
% sampling ST = 0.01; % Simulation Length len = 100 time = 0:ST:ST*(len-1); figure plot(time)
数式を挿入
数式を呼び出すショートカットはこちら。「挿入」タブからも呼べます。
- Ctrl+Shift+E: 対話式数式エディタ(要はWord風)
- Ctrl+Shift+L: Latex 形式での挿入
Latex形式はマクロも難しそうだし,ちょっと不便しそうです。
流石に行列を書くめんどくささには理解を示してくれたらしく,以下のようにコマンドを呼ぶことで本家より若干簡略化して書けます。
{\bf A} = \pmatrix{a & b \cr c & d}
以前にも似たようなことをやりましたね。Jupyterならマクロを書けるんですが…
ossyaritoori.hatenablog.com
エクスポート
個人メモではここまでで十分ですがこれを誰かと共有する際にはできるだけ文章形式で出力したいです。
ライブ スクリプトの共有 - MATLAB & Simulink - MathWorks 日本