4

オブジェクトの見出しをプロットしようとしています。ポイントの 4 つのベクトルがあります - それらを呼びましょう

  • mdex
  • mdey(別名x1,y1)、
  • thpx
  • thpy(別名x2,y2)。

yの変化とx(dyと) の変化を見つけて、dxそれを関数に入力していatan2dます。次に、結果を調べてグラフにプロットします。

グラフの目盛りは -180 から 180 までです。私の問題は、線が -180 度または 180 度を通過するときに発生します。次に、グラフの反対側に「ポップ」します (つまり、181 が実際には -179 になります)。

これは、実際には角度が大きく変化していないのに、角度が大きく変化しているように見えるため、問題があります。さらに、これにより、ポイント間の変化量に基づいた角速度の計算が台無しになります。もともと、0 未満のすべての値に 180 を追加して、グラフを 0 ~ 360 スケールに変換しようとしましたが、うまくいきませんでした。

問題をよりよく理解できるように、グラフを次に示します (グラフは、0-360 変換を試みた後のものです)。

何とか

私の質問

増加し続ける値を与える角度を計算するために使用できる別の関数があるかどうか、データを変更してデータを適切にプロットする方法、またはグラフを変更して直感的に見えるようにする方法があるかどうか疑問に思っています?

前もって感謝します!

4

1 に答える 1

7

unwrap不要なジャンプを削除するために使用します。引数はラジアンでなければなりません:

>> ang = [150 160 170 180 -170 -160] %// undesired jump from 180 to -180
ang =
   150   160   170   180  -170  -160

>> 180/pi * unwrap(ang * pi/180)
ans =
   150   160   170   180   190   200
于 2014-07-16T14:55:49.480 に答える