MATLAB初心者向け、とりあえず覚えるべき知識、使い方まとめ!

※当ブログはアフィリエイト広告を利用しています

MATLAB
[2024/2/12 更新:MATLAB学習おすすめ書籍の紹介記事を末尾に追記しました]
[2023/6/2 更新:  無料学習体験などの情報追記しました]
MATLABはとにかく機能が豊富です。公式ページや公式ドキュメントでは隅々まで学習できるように豊富な説明や講座がありますが、それゆえ、学習に時間がかかるのが難点です。
プログラマー

MATLAB

初心者

  • MATLABの基本的な使い方を効率よく学習したい
  • MATLABの公式ドキュメンテーションのページを見ても、用語がわからないので読んでも更に疑問が出てくる
  • どこから読んだらいいかわからない
  • 専門的なことは置いといて、とりあえず必要なことだけ早く知りたい。

MATLABを使い始める人、使い始めたばかりの人は、このような思いがあると思います。

そこで、本記事では必須の知識のみを、図や例も示しながら解説しています。

 

これからMATLABを使う人に向けて、使用頻度、利用率の高い、絶対に必要な知識のみを厳選して紹介します。短時間で効率よく、基本を理解いただけると思います。また、必須ではないですが、できれば覚えておきたい便利機能も幾つか紹介しています。

具体的には以下の内容を記載しています。(詳しくは目次をご覧下さい。)

  • 行列の作成、連結、削除、演算方法
  • 行列の任意の要素へのアクセス方法
  • MATLABの実行方法
  • デバッグ方法
  • プロットする方法、Figureの使い方【データの可視化】

なお、筆者はMATLABを使用して開発をしているエンジニアです。 まだまだ勉強中ですが、経験を活かして、誰もが知っておくべきだと思うことをまとめました。

(本記事で使用しているMATLABのバージョンはR2018aです。基本機能は最新版と変わりありません。)

[MATLAB/Simulinkの人気のオンライン学習はコチラをチェック↓
「MATLAB」で検索すればたくさんのMATLABに関する講座が見つかります 【Udemy ユーデミー】]
プログラミング言語カテゴリー
  1. 実行方法
    1. コマンドウィンドウからの実行
    2. コマンドウィンドウのクリア
    3. コマンド履歴の表示
  2. ワークスペース変数
    1. ワークスペース変数の参照、編集
    2. ワークスペース変数の様々な情報表示
    3. ワークスペース変数のクリア
  3. 行列の作成、連結、削除、演算方法
    1. 行列の作成
    2. 行列の連結
    3. 行列の削除
    4. 行列の演算
    5. 特殊な行列を作成する関数
    6. 数列の作成
    7. 行列の転置
    8. 文字列の作成
    9. MATLAB の基本クラス
  4. 行列の任意の要素へのアクセス方法
    1. 3つのアクセス方法
    2. 位置によるインデックス付け
    3. 線形インデックス付け
    4. 論理値によるインデックス付け
  5. スクリプトでの実行、デバッグ方法
    1. スクリプトの新規作成
    2. スクリプトの編集
    3. スクリプトの保存
    4. コメントの記述、処理のコメントアウト(無効化)
    5. スクリプトの実行
    6. デバッグ方法
      1. ブレークポイントの張り方
      2. デバッグメニュー
      3. ブレーク中の変数の値の参照
      4. disp()を使用したデバッグ
    7. コードセクション
      1. コードセクションの書き方
      2. コードセクション単位での実行
    8. 実行時の便利機能
      1. 値のインクリメントおよびセクションの実行
    9. ライブスクリプト
      1. ライブスクリプトの作成
      2. ライブスクリプトの編集、記述可能な項目
  6. プロットする方法、Figureの使い方【データの可視化】
    1. データのプロット
    2. 書式設定
    3. タイトル、軸ラベル
    4. プロットの重ね合わせ
    5. 凡例の追加
    6. 複数のグラフを並べる subplot
    7. 3次元データのプロット
    8. 簡単プロット実行
      1. ワークスペースから変数を指定してプロット
      2. プロットタブからのプロット
    9. Figureの使い方、おすすめ機能
      1. 基本機能
      2. データカーソル
      3. 3次元回転
  7. まとめ
    1. MATLABでAIやアルゴリズム検証、データ解析を!
    2. MATLABが学べる、相談、依頼できるサービスはこちら
      1. Tech Teacher
      2. ココナラ
      3. Udemy
    3. 筆者おすすめのMATLAB初心者、入門者向け著書

実行方法

コマンドウィンドウからの実行

まずは実行方法です。コマンドウィンドウの>>に続いて処理を直接入力し、Enterを押します。 結果がコマンドウィンドウに表示されます。

なお、行末に「;(セミコロン)」を書くと、結果を表示(出力)しません。

他には、後で説明する「スクリプト(mファイル)からの実行」方法があります。

コマンドウィンドウのクリア

clc

と入力して実行すると、コマンドウィンドウの表示がクリアされます。

コマンド履歴の表示

コマンドウィンドウで「↑」キーを押すと、これまで実行したコマンドの履歴が表示されます。 履歴から選択して入力することができます。

ワークスペース変数

「ワークスペース」というエリアには実行で得られた各変数の値が表示されます。

計算結果を代入する変数を指定しない場合、「ans」という変数に結果が格納されます。

なお、ワークスペース変数は*.matという形式のファイル(MATファイル)に保存しておくと、 load()という関数で読み込むことができます。 予めデータだけを先に読み込ませて、以降の処理で参照することができます。

ワークスペース変数の参照、編集

ワークスペース変数の名前をダブルクリックすると変数の中のデータを参照することができます。

この画面で値を変更することもできます。

ワークスペース変数の様々な情報表示

ワークスペース変数は、値以外にも最小値、最大値、平均値、分散など 様々な値を表示することができます。

「名前」や「値」のある部分を右クリックして表示されるリストから選択して、 追加することができます。 サイズの大きい複雑なデータでは、このような情報がすぐに確認できるのは嬉しいですね。

ワークスペース変数のクリア

clear

と入力して実行すると、ワークスペースの変数を全てクリアできます。

clear 変数名

とすると、指定した変数のみクリアできます。

行列の作成、連結、削除、演算方法

行列の作成

MATLABではデータを行列形式で扱います。1つの数値でも1行1列の行列として扱われます。

要素が複数の場合は大かっこ [ ] で囲います。 同一行のデータの要素はスペースかコンマで区切ります。行はセミコロン ( ; )で区切ります。

なお、後で説明する数列の場合は、大かっこで囲う必要はありません。

行列の連結

行列は大かっこ[]を使用して連結します。 行列の作成時と同様に、同じ行の後ろの列に連結する場合は、スペースまたはコンマで連結 します。次の行に連結する場合はセミコロンを使用します。

このように、自分自身の後ろに別の行列や要素を後から連結する方法はよく使用します。

行列の削除

行列の削除は、削除したい要素に大かっこ[]を代入します。 この例では1行目を削除しています。

全要素を削除する場合は[]を行列全体に代入します。

行列の演算

行列は+, – , ^ などの演算子を用いて四則演算やべき乗などができます。

単一の数値の演算ではなく、行列同士の演算の場合は注意が必要です。 右の図のように、行列同士の乗算や除算では、.(ドット)を付けるのと付けないのでは意味が変わります。 乗算の場合、要素単位では .* とします。 .を付けない場合は行列の乗算 A×B の結果になります。

特殊な行列を作成する関数

特定の値を持つ行列を作成できる関数もあります。 例えば以下のような関数は良く利用することになると思います。

関数説明
zerosすべての要素が 0 の行列の作成
onesすべての要素が 1 の行列の作成
randiランダムな整数の行列の作成

この例では、2行3列の全てが0の行列A、全てが1の行列B、-10~10の間の乱数を持つ行列C を作成しています。

数列の作成

コロンを使用すると、等間隔の数列が作成できます。 書き方は 「最初の数:増減させる数:最後の数」です。 増減させる数は、負の数や少数も可能です。省略すると1ずつ増加という意味になります。

数列は、このようなfor文を利用した繰り返し処理の条件としてよく使います。

for C=1:5 
    disp(C);
end

この例では、1から5までCを増加させ、disp()関数でCの値を表示しています。

行列の転置

こちらも非常によく使用するので覚えておきましょう。 行列の行と列を入れ替える(転置)するには ‘ (アポストロフィ)を使います。

文字列の作成

文字列(string配列)は”(ダブルクォーテーション(二重引用符))で囲います。+ で文字列の要素に別の文字列を連結することができます。

MATLAB の基本クラス

少し余談ですが、MATLABのデータ型はこの図の種類だけあります。

引用元:MATLABの基本クラス

数字(numeric)は、既定ではdouble(倍精度浮動小数点)として扱われます。 他の数値型で作成する場合は

y = int8(10);

のように型名を明記します。

まずは数字(numeric)、文字列(string)、論理値(logical)ぐらいを覚えておけば良いでしょう。

[MATLAB/Simulinkの人気のオンライン学習はコチラをチェック↓
「MATLAB」で検索すればたくさんのMATLABに関する講座が見つかります 【Udemy ユーデミー】]
プログラミング言語カテゴリー

行列の任意の要素へのアクセス方法

3つのアクセス方法

行列の任意の要素へアクセスする方法は主に3つあります。  

  1. 位置によるインデックス付け
  2. 線形インデックス付け
  3. 論理値によるインデックス付け

このうち、もっとも一般的なものは1です。とりあえずこれだけ知っておけば問題ありません。

2の方法はあまり使用しないと思いますが、3は知っておくと便利です。 それぞれ例を見ていきましょう。

位置によるインデックス付け

これは()で明示的に行番号と列番号を指定する方法です。 コロン(:)で、範囲を指定することが出来ます。

この例ではそれぞれ、 2行目、3列目の要素である 6 2行目、1列目から3列目の要素である 4, 5, 6 にアクセスしています。

行や列の最後は「end」で指定することもできます。 いちいち行数や列数を調べなくても最後の要素にアクセスできるので便利です。

全ての行や列を指定する場合はコロンだけを用います。 A(:,2) は全行の2列目、という意味になります。

線形インデックス付け

これは例を見てみるのが分かり易いと思います。 Cが「線形インデックス付け」によるアクセス方法です。Bは先に述べた「位置によるインデックス付け」です。

MATLABは行列を表示していますが、内部的には赤矢印の順に単一の列して値を保持しています。 よって、A(4)で単一の列の4番目、つまり5にアクセスすることができます。

この方法が役に立つのは、配列のサイズや形状を気にしたくない場合です。 全要素の合計を求めるような場合は、このようなやり方で計算できます。

ただし、MATLAB R2018b 以降であれば

sum(A,‘all’);

で全要素が合計できます。線形インデント付けは今後のために知っておいた方が良いのですが、あまり意識することはないかもしれません。

論理値によるインデックス付け

こちらは、特定の条件を満たした要素だけを処理したい場合に便利です。

A < B のような関係演算子では論理値(logical配列)が取得できます。 次にB(index)とすることで、論理値indexが1(true)の要素のみを取り出すことが出来ます。 この後は、C(1)、C(2)のように、関係演算子の結果が1(true)の要素だけにアクセスできます。

スクリプトでの実行、デバッグ方法

これまでは非常に簡単な処理でしたので、コマンドウィンドウで実行してきましたが、 通常、MATLABのコードは、mファイルというスクリプトに処理を記述します。 スクリプトに記述すると、処理の途中で止めたり、値を参照したりと、 途中の結果の正しさを検証する(デバッグする)ことができます。

あるスクリプトから別のスクリプトを呼び出すこともできます。

以降、スクリプトの作成方法から実行、デバッグ方法について、 必ず知っておくべき使用方法を説明していきます。

スクリプトの新規作成

[ホーム] タブの「新規スクリプト」をクリックすると、 空のスクリプトが作成されます

[ホーム] タブの[新規作成] – [スクリプト] からでも作成できます。

スクリプトの編集

エディターで処理を記述します。 なお、外部のエディターより、MATLABのエディターで編集することをおすすめします。 MATLABの構文に沿っているか指摘してくれたり、自動でインデントをつけてくれたり、 関数のヘルプが見れたりと、何かとありがたい機能が付いています。

なお、スクリプトの新規作成は、この図の+マークからでもできます。

スクリプトの保存

[保存]ボタンもしくは[Ctrl+s]キーで編集したスクリプトを保存します。

ここでは”TestScript1.m”という名前にして保存しています。

コメントの記述、処理のコメントアウト(無効化)

プログラム中の任意の場所に % でコメントを記述できます。

複数行まとめてコメントアウト(処理の無効化)をする場合は%{ }% で囲います。

行をまとめて選択し、上部の「%」をクリックすると複数行まとめてコメントアウトできます。 いちいち行の先頭にカーソルを合わせて%を書かなくてよいので、 複数行まとめてコメントアウトする場合は、このボタンを使った方が効率が良いです。

スクリプトの実行

実行ボタンから実行します。[F5]キーでも実行できます。

画面左のリストから、スクリプトファイルを選び、コマンドウィンドウにドラッグアンドドロップしても実行できます。

コマンドウィンドウには run(‘スクリプトファイルのパス’) と出力されて実行されます。run()は指定したスクリプトファイルを実行する関数です。スクリプト内で、別のスクリプトを呼び出す場合にも使用します。

デバッグ方法

ここからはデバッグ方法についての説明です。

ブレークポイントの張り方

エディター画面の各行左端の ― の部分をクリックすると赤い●のブレークポイントが設定されます。

この状態で実行するとブレークポイントで実行が停止し、デバッグメニューが選択できるようになります。

デバッグメニュー

上部の「デバッグ」のエリアにあるボタンは以下の通りです。

  • 「続行」 は次のブレークポイントまで実行します。
  • 「ステップ」は1行ずつ実行します。
  • 「ステップイン」はその行に関数がある場合、関数の中に入ります。
  • 「ステップアウト」は関数から出ます。
  • 「カーソル行まで実行」はカーソルを置いている行まで実行します。
  • 「デバッグの終了」で、スクリプトの実行を中断、終了します。

ブレーク中の変数の値の参照

ブレークポイントで止めているとき、変数の上にカーソルを置くと、その時点のその変数の値が表示されます。途中結果を確認した場合に便利ですね。

disp()を使用したデバッグ

ブレークポイントで止めなくても、disp()を使用して値を表示させることでデバッグする方法も効率的です。disp()は、他のプログラミング言語でいうと、print()やprintf()に相当するもので、スクリプト内の変数の値や文字列をコマンドウィンドウに出力させることができます

ここでは例として、1から10の範囲の乱数を1行5列の行列に格納し、5以下と5より大きい数の出現数を数える、それを20回繰り返して合計数をコマンドウィンドウに出力するというスクリプトを作ってみました。

disp(“文字列”) で与えた文字列が出力されます。num2str(数値)では、数値を文字列に変換しています。+ 演算子で文字列同士を結合しています。

なお、randi()は乱数の発生、find()では条件に合致する要素のインデックスの取得、numel()で行列の要素の数を取得をしています。

コードセクション

コードセクションの書き方

コード内に %% を記述すると、セクションとして区切ることができます。コードの目次になるので見やすくなります。

また、セクションを記述しておくと、スクリプトファイルを選択すると、MATLABの画面左下にあるエリアにセクション一覧が表示され、そこから任意のセクションの位置に移動する事ができます。長いコードになると非常に便利です。

コードセクション単位での実行

セクションを記述しておくと、スクリプト内をセクション単位で実行することが可能になります。大規模なコードの場合、特定の処理のまとまりだけを実行、デバッグできるので便利です。

  • 「実行して次に進む」では選択されている(黄色網掛け)のセクションを実行し、次のセクション先頭で止まります。
  • 「セクションの実行」では選択されている(黄色網掛け)のセクションを実行し、カーソルは移動しません。
  • 「次に進む」は次のセクションに移動するのみで実行しません。

実行時の便利機能

覚えておくと便利な実行時の機能を紹介します。

値のインクリメントおよびセクションの実行

任意の数値を連続的に増減させ、その結果をシームレスに確認できる機能です。

数字の上や横にカーソルを置いた状態で、右クリック、[値のインクリメントおよびセクションの実行]を選択します。この例では 1行目の A=1 の右辺の1 で右クリックしています。

小さなダイアログボックスが表示されますので、+を押すと、Aが1.0増加された値(=2)に変化し、また同時にAが2の状態でスクリプトが実行されます。よって+を押すたびに、Aの数字が変わるとともに、Aの値を使用しているEの結果も変化しています。

「-」のボタンを押せば入力されている数値だけ引いた値になり実行されます。「÷」や「×」も同様に、その横に入力されている数値だけ、割った値、掛けた値に変化して実行されます。

なお、コードをセクションで区切っている場合は、値の変化と実行は選択しているセクションの中にだけ影響します。

値を連続して増減させたりして、結果がどう変わるかを見てみたい場合に便利ですね。

ライブスクリプト

これは覚えておくべき必須の機能では無いのですが、知っておいた方が便利ですので紹介します。

ライブスクリプトの作成

画面上部の[新規作成]-[ライブ スクリプト]を押すと、mlxという拡張子のファイルが開かれ、[ライブエディター]というタブが表示されます。

[ライブエディター]のタブでは「テキスト」か「コード」を選択します。テキストでは文字を太字にしたり箇条書きにすることができます。コードは通常のスクリプトと同様に実行される処理を記載します。

ライブスクリプトの編集、記述可能な項目

[挿入]のタブから、画像や式、ハイパーリンクの挿入ができます。

[表示]のタブから表示に関する設定ができます。出力結果の表示方法として[インラインで出力]とすると、エディタ画面内でコードの下に結果が表示され、[右側に出力」を選択すると、エディタ画面が2分割され右側に結果が表示されます。

このように、通常のスクリプトと異なり、多様な表現が可能になります。他の人にコードの詳しい説明をする場合に便利ですね。動く仕様書・説明書といったところでしょうか。

ただし、通常のスクリプトより動作が重くなります。このような表現が必要な場合以外は無理して使う必要はありません。コードの見やすさを上げる場合は、コード内にコメントやセクションをきちんと書いておけば十分だと思います。

MATLABの無料授業・学習体験、相談はこちらもおすすめです
無料体験【Tech Teacher】完全個別指導のMATLAB講座フルオーダー授業で課題解決!
ココナラでMATLAB,プログラミングの相談・作成依頼↓登録は無料です
[MATLAB/Simulinkの人気のオンライン学習はコチラをチェック↓
「MATLAB」で検索すればたくさんのMATLABに関する講座が見つかります 【Udemy ユーデミー】]
プログラミング言語カテゴリー

プロットする方法、Figureの使い方【データの可視化】

MATLABは他のプログラミング言語に比べてデータの可視化が得意です。簡単な記述や操作でできます。特に覚えておくべきことを説明していきます。

データのプロット

データのプロット(グラフ化)は、plot 関数を使います。2次元の場合は、plot(x,y)でx軸、y軸の値を指定します。実行するとFigureという形式のウィンドウの中にプロットされます。以下はy=x^2をプロットした例です。

x=0:1:10;
y=x.^2;
plot(x,y);

書式設定

plot()の引数で、色や、マーカー、ラインのスタイルを設定できます。詳細は公式ドキュメントのplotのページを参照ください。ここでも簡単に紹介します。

ラインスタイルは以下4種類です。

ライン スタイル説明
実線 (既定の設定)
破線
:点線
-.一点鎖線

マーカーの種類はたくさんありますが、とりあえず4つぐらい覚えておけば良いかと思います。以下は見た目と記号が一致しているので覚えやすいです。

マーカー説明
o
+プラス記号
*アスタリスク
.

色は8種類です。これらは1文字で省略した場合ですが、省略せず例えば’red’と入力しても赤色になります。

説明
y
mマゼンタ
cシアン
r
g
b
w
k

色、マーカー、ラインスタイルは順不同で、省略もできます。例えば、‘r*:’ とすると * 型のマーカー、点線のライン、赤色になります。

x=0:1:10;
y=x.^2;
plot(x,y,'r*:');

plot(x,y,‘r*’);

のように、マーカーを指定して、ラインスタイルを省略すれば、ラインのないプロットになります。

タイトル、軸ラベル

title(), xlabel(), ylabel()関数を用いてグラフにタイトルや軸のラベルを付けることができます。

title('y=x*xのグラフ');
xlabel('X軸のラベル');
ylabel('Y軸のラベル');

なお、_(アンダーバー)をそのまま入れると、文字が下付き文字になってしまいます。

title('y=x*xのグラフ');
xlabel('X軸_ラベル');
ylabel('Y軸_ラベル');

これは、既定の設定ではアンダーバーが「下付き文字」を意味する特殊な扱いになっているためです。

そのまま表示させるには直前に「\(バックスラッシュ)(円記号) 」を付けます。なお「^(ハット)」を付けると上付き文字になります。

title('y=x^2のグラフ');
xlabel('X軸\_ラベル');
ylabel('Y軸\_ラベル');

もしくは以下のように引数に ‘interpreter’,‘none’ を付けて、このような特殊文字の扱いをオフする設定にすると、引数で入力した文字が変換されません。

xlabel('X軸_ラベル','interpreter','none');
ylabel('Y軸_ラベル','interpreter','none');

プロットの重ね合わせ

表示中のプロットに、別のプロットを重ね合わせる方法は主に2種類あります。

  1. hold on で現在のプロットを保持する
  2. plot()の引数で複数のデータと書式を連続で指定する

1.の方法では、「hold on」で現在のプロットを保持したまま次のプロットを重ねて表示させます。以下の例ではy=x^2のプロットを保持したまま、y=xのプロットを青色で追加しています。

x=0:1:10;
y=x.^2;
plot(x,y,'r*:');
hold on;    % 現在のプロットを保持
x2=0:1:10;
y2=x2;
plot(x2,y2,'b*:');
title('2種類のデータ');
xlabel('X軸\_ラベル');
ylabel('Y軸\_ラベル');

2.の方法では以下のような書き方になります。3つ以上重ね合わせる場合でも同様です。

x=0:1:10;
y=x.^2;
x2=0:1:10;
y2=x;
plot(x,y,'r*:',x2,y2,'b*:');  % 2つのプロットのデータと書式を指定
title('2種類のデータ');
xlabel('X軸\_ラベル');
ylabel('Y軸\_ラベル');

いずれの方法でも結果は同じです。

最初から重ね合わせることがわかっているなら2.の方が若干コードが短くなります。1.の方は既存のプロットに後から追加することになった場合に向いています。

凡例の追加

legend() 関数で各プロットの凡例を付けることが出来ます。

legend('y=x^2','y=x');

複数のグラフを並べる subplot

subplot()で1つのFigureの中に複数のグラフを行列の形で並べることができます。subplot(m,n,p)で、Figure をm行n列のグリッドに分割し、pで指定された位置にグラフを作成するという意味になります。以下の例では、2行1列の並びで2つのsubplotを作成しています。

subplot(2,1,1);     % 2行1列の並びの1番目のplot
x=0:1:10;
y1=x.^2;
plot(x,y1,'r*:');
title('1番目のsubplot: y=x^2');

subplot(2,1,2);     % 2行1列の並びの2番目のplot
y2=x;
plot(x,y2,'b*:');
title('2番目のsubplot: y=x');

subplotは1つのFigure(Window)内に並べるために使用しますが、単に

figure

と実行すれば新規の空のFigureを作成できますので、Windowを分けても良い場合は都度Figureを作成してそこにプロットすれば良いでしょう。

3次元データのプロット

3次元のプロットの場合はplot3()を使います。

x=0:1:10;
y=0:1:10;
z=0:1:10;
plot3(x,y,z,'bo:');
grid on;

この例では「grid on」により、グリッドラインを表示させています。3次元になるとグリッドラインがある方が見やすいかと思います。

なお、3次元プロットでは scatter3() がおすすめです。scatter3は、ラインのない点だけを○で表示する散布図で、例えば3次元の点データを気軽にプロットするのに向いています。最初からグリッドライン表示がありになっています。

x=0:1:10;
y=0:1:10;
z=0:1:10;
scatter3(x,y,z);

簡単プロット実行

ここまでコード上でプロットを作成する方法を説明してきましたが、実は画面操作で非常に簡単にプロットする方法があります。知っておくとデータの可視化や解析がかなり効率化できますので是非覚えておいてください。

ワークスペースから変数を指定してプロット

ワークスペースの中からプロットしたい変数を選択し、右クリックすると、図のようなリストが表示されます。CtrlやShiftキーで複数の変数を選択できます。plot(x,y)を選択すればこれだけでplot(x,y)がコマンド実行されてプロットされます。

プロットタブからのプロット

[プロット]タブからの実行はさらにおすすめです。選択した変数が左端に表示されており、後は右に候補となるグラフの種類が出ているのでそこから選んでクリックするだけでプロットされます。

なお、右の方にあるオプションで、「新規Figure」にチェックを入れると、毎回別のFigureウィンドウでプロットされます。上書きしたくない場合はチェックしておきましょう。同じFigureに表示させる場合は「Figureの再利用」をチェックします。

3次元の場合も同様です。x,y,zの3つの変数を選択すると、候補となるグラフが3次元用のものに変わります。おすすめのグラフ形式を表示してくれるのは在り難いです。

プロットタブを利用すると、サクッと色々な形式でデータの可視化が出来ます。非常に便利ですね。

なお、変数の範囲を指定してプロットすることもできます。ワークスペースから変数をダブルクリックして、エディターに中身を表示させます。CtrlやShiftキーで表示したい範囲を選択すると、画面左上の変数がx(1,1:6)のように範囲選択された状態になります。このままplot などのグラフを選択すればその範囲だけをプロットできます。

ただし、複数の変数を指定した範囲選択はできないようです。(ご存知の方がいたら教えてください。)

Figureの使い方、おすすめ機能

基本機能

Figureウィンドウでは、データの保存やタイトル、ラベルなどの設定を画面上で行うことができます。ラベルやタイトルの編集・追加は[挿入]から選択します。

他にも多数の機能があるのですが、ここではとりあえず覚えておくべきおすすめの機能を紹介します。

データカーソル

これはプロットしているデータの座標を表示する機能です。データカーソルのアイコンを押して、プロットしているデータ上で左クリックを押すと、座標が表示されます。Shiftキーを押しながらクリックすれば複数表示することができます。着目したい点の座標を確認したい場合に使用します。

なお、この例は公式ドキュメントに従って、MATLABのロゴをプロットしたものです。

3次元回転

特に3次元のプロットでは視点を変えたい場合があります。その場合は「3次元回転」をクリックした後、クリックしたままプロット画像内を移動させることで軸を回転させることができます。

こちらの動画は、MATLABロゴのプロットを3次元回転させています。右クリックして「元の表示にリセット」を選択すると元の状態に戻ります。

MATLABの無料授業・学習体験、相談はこちらもおすすめです
無料体験【Tech Teacher】完全個別指導のMATLAB講座フルオーダー授業で課題解決!
ココナラでMATLAB,プログラミングの相談・作成依頼↓登録は無料です
[MATLAB/Simulinkの人気のオンライン学習はコチラをチェック↓
「MATLAB」で検索すればたくさんのMATLABに関する講座が見つかります 【Udemy ユーデミー】]
プログラミング言語カテゴリー

まとめ

MATLABでAIやアルゴリズム検証、データ解析を!

本記事ではこれからMATLABを使う方に向けて、是非覚えておいていただきたい必須の知識や使い方を、図や例も示しながら紹介しました。実際に使っている人でも、意外と知らない機能もあったのではないでしょうか。

MATLABは本当に機能が豊富で、ここで挙げたものはまだまだ一部に過ぎませんが、何をするにしても覚えておくべきものをまとめましたので、是非参考にしていただければと思います。

より詳しい解説や、専門的な知識についても今後紹介していきたいと思います。

プログラミング言語としても、ツールとしても本当に利用価値の高いものだと思いますので、MATLABで、計算、アルゴリズムの検証、データの解析、データの可視化、AI、自動運転、何でも取り組んでみましょう。

こちらも合わせてご覧下さい。

MATLABが学べる、相談、依頼できるサービスはこちら

MATLABをもっと理解したい、コード作成を手伝ってもらいたい、わからない部分を教えてほしい、気軽に相談したい、ということはありませんか?

Tech TeacherではMATLABの個別指導があります。無料体験が可能ですのでお試ししてみてください。
ココナラではMATLABのサービスを提供している方もたくさんおられるので、気軽に探してみてください。Udemyは英語の講座が多いですが豊富な講座のバリエーションがあります。大学の課題、研究・開発、データ分析、課題解決に役立ちます。

Tech Teacher

MATLABの無料授業・学習体験
「完全個別指導のMATLAB講座フルオーダー授業で課題解決!」
無料体験【Tech Teacher】完全個別指導のMATLAB講座フルオーダー授業で課題解決!

ココナラ

会員登録(無料)をしてMATLABで検索すればたくさんのMATLABに関するサービスが見つかります。プログラミングスクール代や講座代を支払うより、安く依頼・相談できるものもたくさんありますよ。

ココナラでMATLAB,プログラミングの相談・作成依頼↓登録は無料です

また、MATLABのスキルに自信がついてきたら、ぜひご自身で出品して見て下さい。依頼を受けて案件をこなせば、稼ぎながら更なるスキルアップに繋がります。

筆者も実際にサービスを提供して稼ぐことができたので、以下記事でやり方やポイントを解説しています。サービス提供も無料で気軽にできます。

こちらをチェック↓

Udemy

[MATLAB/Simulinkの人気のオンライン学習はコチラをチェック↓ ]

プログラミング言語の人気オンラインコース

「MATLAB」で検索すればたくさんのMATLABに関する講座が見つかります。正直英語が苦手だとつらいですが、動画なので何度も見返せば、様々な技術、やり方が身に付くと思います

筆者おすすめのMATLAB初心者、入門者向け著書

最後に筆者のおすすめの初心者向けの本を紹介しておきます。是非本サイトと合わせてご活用ください。

MATLABの公式サイトには豊富なドキュメントが用意されており、MATLABの基本から高度なトピックまで、幅広い情報が提供されていますが、MATLABの書籍や参考書を持っておくことにはいくつかのメリットがあります。

  • 書籍や参考書は、一連のテーマを体系的に学習するのに適しています。基礎から応用までを順を追って学ぶことができます。
  • 書籍には実践的な例題や演習問題が多数含まれています。理論だけでなく、実際の問題に対するMATLABの活用方法を学ぶことができ問題解決のスキルを養うこともできます。
  • 書籍の著者は、MATLABの専門家や実務家であり、自分の経験や知識を元に解説しています。そのため、実践的なノウハウやテクニックを学ぶことができます。
  • 書籍はオフラインでも利用できるため、インターネット接続がない環境でも学習や参照が可能です。また、書籍を手元に置いておくことで、いつでも簡単に情報を参照できます。

是非、これらの参考書類もお手元に置いて、効率よく学習いただければと思います。

 

※Amazon 評価は 2024/3月時点のカスタマーレビューの点数です。

タイトル画像購入先ポイントAmazon評価
はじめてのMATLABAmazon 楽天 YahooMATLABの基本的な概念や操作方法を図や具体例を交えてわかりやすく説明4.1
最新MATLABハンドブック第七版: 機械学習・ディープラーニング対応Amazon 楽天 YahooMATLABの基本的な機能から最新のディープラーニング技術までを包括的にカバー3.4
MATLABクイックスタート 数式処理から機械学習までAmazon 楽天 Yahoo数学的基礎から、データ分析や機械学習アルゴリズムの実装までカバー3.4
MATLABではじめるプログラミング教室Amazon 楽天 Yahoo基本的な構文や機能から、初学者でも理解しやすいように解説3.7
最新 使える! MATLAB 第3版Amazon 楽天 Yahoo基本的な使い方から高度なテクニックまで、幅広いトピックを網羅3.4
MATLAB/Simulinkによる制御工学入門Amazon 楽天 YahooMATLABとSimulinkを使ったシミュレーションや設計手法について詳しく説明4.4
自動車業界MBDエンジニアのためのSimulink入門Amazon 楽天 YahooSimulinkの基本から自動車システムのモデリングやシミュレーション、実装までを詳しく説明4.4
MATLABで学ぶ実践画像・音声処理入門Amazon 楽天 Yahoo実際の画像や音声データを処理し、解析する方法について詳しく説明3.5

 

Audible 無料体験に登録 (12万作以上のオーディオブック)

Amazon Music Unlimited 無料体験に登録

Kindle Unlimited 無料体験に登録

詳しくは以下の記事で解説・紹介しています。

長くなりましたが、ご覧いただきまして有難うございました。良ければコメントもご自由にお書き下さい。改善要望などあれば参考にさせていただきます。

良ければフォローお願いします。

コメント

  1. 初心者 より:

    MATLABの例題が使えません。ローカルにファイルが無いようです。
    どうすれば使えるようになるでしょうか?
    例えばopenExampleやloadコマンドでエラーが出てしまいます。
    よろしくお願いします。

タイトルとURLをコピーしました