MATLABで遊ぼうその1:リサジュー図形をプロットしてみる

投稿日:2022年10月31日
最終更新日:2022年10月31日

MATLABで色々遊んでみる

MATLABで画像処理、音声処理、現代制御などテーマを決めて色々やってきたが、「これやってみたい」と思いついた内容は単発でちょこちょこ試してブログに書いておきたいと思う。

今回はリサジュー図形をMATLABでプロットしてみる。リサジュー図形については以下を参照。

リサジュー図形 – Wikipedia

 

開発環境

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の記事は以下にまとめてます。

MATLAB/Simulinkで遊んでみる まとめ

 


投稿者: wakky

映画と旅行が大好きなエンジニア。お酒、ゲーム、読書も好き。

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください