3

Xさまざまな半径の数に対応するデータポイントと、Yそれぞれが評価された角度の数を取得したシミュレーションを実行しました。これは、プロットする必要のあるX時間データポイントがあることを意味します。Y

現在、理想的ではない方法でプロットしています。と軸をと軸として使用してxyます。これは、私のデータが、物理的に表す円ではなく、デカルトグリッド上の半径とともに増加する正弦波トレンドとして表示されることを意味します。これは私が現在私のデータをプロットしている方法です:rtheta

surf(r_val, th_val, v_val);

私がやりたいのは、関数のような円筒軸にデータをプロットすることですpolar()が、R3空間にプロットします。ツールボックスをダウンロードしたり、既存の極関数を変更したりしたくありません。他に解決策がない場合は、とにかくこれを行うことになります。

ご協力いただきありがとうございます!G。

また、Matlab2012aを使用しています

編集:

r_val=一意の半径を含む1x8ベクトル

th_val=一意の角度を含む1x16ベクトル

v_val=各位置に対応する電圧を含む8x16マトリックス

注:(回答後)

Matlabは現在、真の極軸法をサポートしていないため、この問題に対する真に理想的なソリューションは存在しません。ここにあるリソース

4

1 に答える 1

5

プロットする前に、座標をデカルト座標に変換する必要があります。MATLAB には、座標変換を実行するための組み込み関数があります。たとえばpol2cart、極座標または円柱座標をデカルト座標に変換する を参照してください。あなたの場合、単に次のようなものを使用します:

[x, y] = pol2cart(th_val, r_val);

surf(x, y, v_val);

編集: とが異なる長さのベクトルであることを考えると、次の行に沿って、 を呼び出す前に、まず点のグリッドを作成する必要がth_valあります。r_valpol2cart

[R, T] = meshgrid(r_val, th_val);
[x, y] = pol2cart(T, R);
surf(x, y, v_val);
于 2012-06-25T13:07:18.613 に答える