MATLABで色々遊んでみる
MATLABで画像処理、音声処理、現代制御などテーマを決めて色々やってきたが、「これやってみたい」と思いついた内容は単発でちょこちょこ試してブログに書いておきたいと思う。
今回はリサジュー図形をMATLABでプロットしてみる。リサジュー図形については以下を参照。
開発環境
MATLAB online (MATLAB R2022a)
リサジュー図形をplotするmファイル
今回は以下のようなmファイルを作って実行してリサジュー図形を描いた。
A = 1; B = 1; a = 3; b = 4; delta = pi/4; theta = linspace(0,2*pi); x = A*cos(a*theta); y = B*sin(b*theta+delta); plot(x,y) axis equal
A、B、a、b、deltaをそれぞれ変えることでリサジュー図形が変化する。thetaをlinspaceを使って0 ~ 2pi(つまり360°)まで変化させてプロットしている。linspaceについて詳しく知りたい人は以下の公式リファレンスを参照。
https://jp.mathworks.com/help/matlab/ref/linspace.html
上のファイルのパラメータで実行してみた結果が以下のグラフ。
このコードをベースに、パラメータをGUIで設定してリサジュー図形の変化を見られるアプリをApp Designerで作ったのだが、それはまた別の記事で書きたいと思う。
参考文献
この本のMATLAB/Simulink 6か月ライセンスを使ってやってます↓
Interface 2022年 9月号
プロットの方法については以下を参考にさせて頂きましたm(_ _)m
線形 2 次元プロット – MATLAB plot – MathWorks 日本
MATLAB/Simulink記事まとめ
MATLABとSimulinkの記事は以下にまとめてます。