• 締切済み

MATLABのfeatherについて

みなさん,こんにちは! 初歩的な質問になりますが, お分かりの方がいらっしゃいましたら, よろしくお願いします. featherの説明は以下のようになっています. 『フェザープロットは、横軸に沿った等間隔の点を原点とするベクトルを表示します。それぞれのベクトルの原点に関連したベクトル成分を表します。 feather(U,V) は、UとVで指定されるベクトルを表示します。ここで、Uは相対的な座標としてのx成分を、Vは相対的な座標としてのy成分を含んでいます。』 ここで質問です.横軸に沿った等間隔の点はどのように指定したら良いのでしょうか? ”必ず1から始まって,間隔が1の要素の数までの点が原点”となってしまいます.これをx軸に平行移動させる,または間隔を変えることはできないのでしょうか? 回答よろしくおねがいします!

みんなの回答

  • sgwjn
  • ベストアンサー率70% (47/67)
回答No.1

関数の中身を見た感じだと、引数による直接の指定は中々難しそうですね。 ただ、以下のように一度描画した後でなら簡単に変更可能です。 % フェザーをプロット h = feather(u, v); % 基線を y = 2 に移動 for i = 1:length(h)  set(h(i), 'YData', get(h(i), 'YData') + 2); end % 各ベクトルのX座標の間隔を 1/2 に変更 for i = 1:length(h)  set(h(i), 'XData', get(h(i), 'XData') / 2); end MATLABは、オブジェクトのハンドルさえ取得できれば、プロパティを直接変更することで大抵のことは実現できます。 各オブジェクトで設定、参照可能なプロパティについては、以下のコマンドで一覧することができます。 get(handle)

wservo
質問者

お礼

ありがとうございました! とても参考になりました! お礼が遅くなり,本当に申し訳ありませんでした! また何かありましたら,宜しくお願いいたします.

関連するQ&A