極座標で動径を対数分布にする方法
3 ビュー (過去 30 日間)
古いコメントを表示
以下のコードで極座標にコンターをプロットしました。この動径部分を対数分布にしたいのですが、やり方が分かりません。 アドバイス頂けたら幸いです。よろしくお願いします。必ずしも以下の様なやり方でなくとも構いません。 図としではdataAが角度(0~360°)、dataBの値を動径の幅としdataCをコンターにしています。(結果として添付の図になります。図の0.1~0.5の部分を対数分布にしたいです)
h=polar([min(dataA) max(dataA)],[min(dataB) max(dataB)]);
delete(h);
hold on;
[theta, rho] = dataA((dataA*pi/180), dataB);
[X, Y] = pol2cart(theta, rho);
contour(X,Y,dataC,'Levelstep',0.1)
set(gca,'YScale','log')
hold off;
0 件のコメント
採用された回答
Hirokazu Tanaka
2018 年 10 月 2 日
残念ながら関数の設定などで直接変更することはできなそうです。 dataB を事前に対数変換しておいてプロットするか・・。
下記の関数が File Exchange にありましたが、この関数では動径方向を対数でプロットできそうです。 https://jp.mathworks.com/matlabcentral/fileexchange/38855-comprehensive-polar-plots
2 件のコメント
Hirokazu Tanaka
2018 年 10 月 5 日
すいません、"Includes log radius support." と冒頭にあったので紹介したのですが、コードを見てもそれらしい部分がみられないですね・・
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!