Borrar filtros
Borrar filtros

2つの点同士を線で結​ぶ方法はありますか。​点の座標は実験結果な​ので11×1の行列(​点Qはqkakudo​_x,qkakudo​_y)(点Wはwka​kudo_x,wka​kudo_y)として​ワークスペースに変数​として格納しています​。このときの点Qのn​行列目と点Wのn行列​目同士(1<n<11​)を結ぶ方法を教えて​ください。

298 visualizaciones (últimos 30 días)
Yuriko Takagi
Yuriko Takagi el 18 de Dic. de 2018
Comentada: Kazuya el 19 de Dic. de 2018
無題.png
  2 comentarios
Kazuya
Kazuya el 18 de Dic. de 2018
点と点を結ぶ、というのはそんなグラフを書きたい、、ということでしょうか?
例えば
plot(rand(2,10),rand(2,10))
untitled.png
Yuriko Takagi
Yuriko Takagi el 19 de Dic. de 2018
ありがとうございます。 
分かりづらい質問で申し訳ないです。 
今回は点 Pのx座標のデータをp_x,y座標のデータをp_y に行列としてワークスペースに入力済み。 
点Qもx座標 のデータをq_x,y座標のデータをq_yに行列としてワークスペースに入力済み。  
無題2.png
1無題.png
これが理想です。 点P(青の〇 ),点 Q(赤の*) をプロットしました。 この図では自分で線を引いてしまいましたが、この色付きのような線のように、色はつかなくていいのでmatlabで点と点を結べるツールがあれば助かります。 
青い線は行列の1行目同士、ピンクの線は行列の2行目同士,緑の線が行列11行目同士を結んでいます。 
アドバイスよろしくお願いいたします。

Iniciar sesión para comentar.

Respuesta aceptada

Kazuya
Kazuya el 19 de Dic. de 2018
点と点を結ぶ「ツール」はありませんが、プロットを書くならいろいろ方法があります。3つ紹介しますが、どれも同じ結果になります。
まず、プロットするサンプルデータ用意しますが、ワークスペースに入力済というデータと同じように 11x1 のベクトルとします。
N = 11;
p_x = rand(N,1);
p_y = rand(N,1);
q_x = rand(N,1);
q_y = rand(N,1);
方法1
もっとも実直な方法。。
figure(1)
for ii=1:N
plot([p_x(ii),p_y(ii)],[q_x(ii),q_y(ii)])
hold on
end
hold off
方法2
p_x と p_y、q_x と q_y をそれぞれ1つの変数にまとめただけです。 plot コマンド実行時の文字数が少し減る・・。
figure(2)
p_xy = [p_x, p_y];
q_xy = [q_x, q_y];
for ii=1:N
plot(p_xy(ii,:),q_xy(ii,:))
hold on
end
hold off
方法3
ちょっと理解が難しい構造ですが、、呼び出し方としては一番シンプルです。
figure(3)
plot(p_xy',q_xy')
  2 comentarios
Yuriko Takagi
Yuriko Takagi el 19 de Dic. de 2018
いくつも方法を考えて頂き本当にありがとうございます。
自分のデータでも試したところお蔭様で無事にできました。助かりました!
お時間使ってくださってありがとうございます!
Kazuya
Kazuya el 19 de Dic. de 2018
よかったです。どういたしましてー。

Iniciar sesión para comentar.

Más respuestas (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!