配列のグラフ化に際するメモリの調整

11 views (last 30 days)
nknknknk
nknknknk on 9 Nov 2017
Commented: michio on 16 Nov 2017

観測データが格納された配列N(10×1)があり、 N[0]=0m,N[1]=200m,N[2]=400m...N[5]=1000m N[6]=1500m,N[7]=2000m,N[8]=2500m,N[9]=3000m,N[10]=3500m というふうに、N[0]からN[5]は距離分解能200m,N[6]からN[10]は距離分解能500mです。

y軸に観測距離、x軸に観測数値(配列の中の値)を表示したグラフを作りたいのですが、

figure;
plot(N, 1:numel(N));

でグラフ化すると図1のようなグラフになります。 図1を図2のようにy軸の1km,2km,3kmの間隔を均等にするためには、 どのような手が考えられるでしょうか。

以下リンクではグラフ作成後のfigure編集について質問させていただきましたが、 プログラムの書き方のアドバイスを頂きたいです。 https://jp.mathworks.com/matlabcentral/answers/366016-

よろしくお願い致します。

図1

図2

Accepted Answer

michio
michio on 10 Nov 2017
plot(N, 1:numel(N));
で y軸を 1:numel(N) ではなく、観測距離を入力すればよい気がします。例えば
y = [0, 0.2, 0.4, 0.6, 0.8, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5];
と定義して
plot(N, y);
  2 Comments
nknknknk
nknknknk on 15 Nov 2017
ご回答ありがとうございます。 このグラフにおいて、N[2]以降を表示したい場合はどのようなコマンドが必要でしょうか。よろしくお願い致します。
michio
michio on 16 Nov 2017
https://jp.mathworks.com/matlabcentral/answers/367149- で回答があるとおり、N(2:end)とendを使うといろいろ便利ですよ。

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!