11/20/11

Matlabあれこれ(3) - 目盛の間隔とか書式とか

軸の書式設定とか.Origin使えよっていうつっこみは無しで.

■目盛の間隔を任意の値にしたい
'xtick', 'ytick'を使います.
例えば画像処理等してると,2のべき乗で目盛を振りたい時がちょくちょく出てきます.
その場合,
set(gca,'xtick',2^5:2^5:2^8);
とすれば,

みたいなやり方で任意の目盛間隔にできる.
行列データだから本来1:2^5:2^8が正しいけど,
[1 33 65 97...]みたいな数字の並びになってしまって見た目がきもいので...
でも原点が0なのか1なのかよくわかんないのは厳密じゃないですね...


■目盛ラベルの書式を指定する
このパターンで数が多くなってくると,

こんな風にxEn表記になってしまい,なんとなくまずい.
MatlabにもfprintfというコマンドがあるしC的に%~表記で行けそうだけど,はてそれをどこに書くか..
悩んでたらフォーラムにありました.'XTickLabel', 'YTickLabel'で設定してやれば良いらしい.
なんでこの場合は,
set(gca, 'xtick',0:2^5:2^8);
set(gca, 'xticklabel',num2str(get(gca,'xtick')','%d'));   %表示形式:10進
とやれば,

getで現在のaxisの状態を取得してるので1行で書くと反映されないみたい.

0 comments:

Post a Comment