カラーマップの軸の表示を変更するには?

3 Ansichten (letzte 30 Tage)
nknknknk
nknknknk am 9 Okt. 2017
Bearbeitet: mizuki am 10 Okt. 2017
こちらの質問させていただいた者です。 →  カラーマップ表示するには
おかげさまでカラーマップ表示ができましたが、軸表示の変更方法を教えていただきたいです。
上図は、 1分毎の観測記録が350個(18:00~23:59)(観測データが取れなかった部分10個分抜け落ちています)並べてカラーマップにしたものです。
x軸にデータの通し番号で表記されていますが、 1→18:00,2→18:01,・・・ という風に観測時間の表記に変更したいです。
ただ、観測できない時(19:03は観測データ無し等)があるので、データファイルから観測時間を読み取り、軸に表示したいです。
また、y軸に関して、 100→0,101→15,→102→30,・・・500→6000 という表記に変更したいです。
どのような方法があるでしょうか。 初歩的な質問でしたら恐縮ですがご確認よろしくお願いします。

Akzeptierte Antwort

mizuki
mizuki am 10 Okt. 2017
Bearbeitet: mizuki am 10 Okt. 2017
ラベルの部分を変更する方法はコードベースとGUIベースの2通りの方法があります。
1. コードベースで変更する方法
xxTickLabel というプロパティを変更します。xx部分はX/Y/Z軸 によって X/Y/Z が入ります。
このプロパティは軸 Axes のプロパティとして含まれています。 軸のプロパティを取得するには、画像を表示後に
h_ax = gca;
あるいは CONTOURF (や他のグラフ) の上の階層にいきます。
[C,h] = contourf(X,Y,Z,'LineStyle','none');
h.Parent.XTickLabel
XTickLabel と YTickLabel を変更して以下のようなグラフではいかがでしょうか。(18:01 は欠損値で NaN になっています)
n = 10;
X = linspace(0,10,n);
Y = linspace(0,1,n);
Z = peaks(n);
Z(:,3) = NaN;
[C,h] = contourf(X,Y,Z,'LineStyle','none');
colorbar;
datestr = (datetime('18:00', 'InputFormat', 'HH:mm') : minutes(1) : datetime('18:10', 'InputFormat', 'HH:mm'))';
datestr.Format = 'HH:mm';
str = string(datestr);
h.Parent.XTickLabel = str;
h.Parent.XTickLabelRotation = 45;
h.Parent.YTickLabel = [0:15:75];
2. GUIベースで変更する方法
プロパティエディタを使用して、図のプロパティを変更します。変更するプロパティは1と同じです。手順については以下の図の1-3に従ってください。

Weitere Antworten (0)

Kategorien

Mehr zu カラーマップ finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!