2008年4月26日土曜日

グラフのX軸・Y軸目盛り位置・ラベルを任意に設定する

グラフの目盛りは自動的につけられますが,目盛り位置と目盛りラベルとを手動で設定したいときはaxesのsetコマンドで、XTick、YTick(目盛り位置を指定するベクトル)とXTickLabel、YTickLabel(目盛ラベル)を使うと便利だ。


%----------------- MATLABのソース -----------------%
% 2008/04/01~2008/04/24のドル・円レートデータ
usdjpy = {
% 日付 始値 高値 安値 終値
'2008/04/24' 103.430000 104.529900 103.290000 104.330000 % 1
'2008/04/23' 102.849900 103.779900 102.720000 103.389900 % 2
'2008/04/22' 103.239900 103.540000 102.650000 102.940000 % 3
'2008/04/21' 103.750000 104.059900 102.949900 103.260000 % 4
'2008/04/18' 102.510000 104.639900 102.230000 103.660000 % 5
'2008/04/17' 101.779900 102.709900 101.680000 102.519900 % 6
'2008/04/16' 101.819900 101.919900 100.800000 101.790000 % 7
'2008/04/15' 101.059900 101.870000 100.769900 101.830000 % 8
'2008/04/14' 101.269900 101.500000 100.269900 101.069900 % 9
'2008/04/11' 101.750000 102.269900 100.620000 100.930000 %10
'2008/04/10' 101.720000 102.029900 100.000000 101.739900 %11
'2008/04/09' 102.559900 102.830000 101.480000 101.769900 %12
'2008/04/08' 102.339900 102.669900 101.730000 102.599900 %13
'2008/04/07' 101.720000 102.849900 101.489900 102.410000 %14
'2008/04/04' 102.250000 102.690000 101.389900 101.449900 %15
'2008/04/03' 102.269900 102.949900 102.040000 102.260000 %16
'2008/04/02' 101.809900 102.830000 101.489900 102.250000 %17
'2008/04/01' 99.860000 102.150000 99.580000 101.860000 %18
};

ymd = datenum(strvcat(usdjpy{:,1}),'yyyy/mm/dd');
open = [usdjpy{:,2}]';
high = [usdjpy{:,3}]';
low = [usdjpy{:,4}]';
clos = [usdjpy{:,5}]';
%時系列オブジェクトの取り込む
data = fints(ymd,[open high low clos],{'OPEN','HIGH','LOW','CLOSE'});
candle(data); %キャンドルスティックチャート

% X軸の目盛り位置を指定するベクトル
set(gca,'XTick',[ymd(18) ymd(13) ymd(8) ymd(3)])
% X軸の目盛りラベル
set(gca,'XTickLabel',{'2008年04月01日(火)';'2008年04月08日(火)';'2008年04月15日(火)';'2008年04月22日(火)'})

% Y軸の目盛り位置を指定するベクトル
set(gca,'YTick',[99 100 101 102 103 104 105])
% Y軸の目盛りラベル
set(gca,'YTickLabel',{'99円/1ドル';'100円/1ドル';'101円/1ドル';'102円/1ドル';'103円/1ドル';'104円/1ドル';'105円/1ドル'})

title('ドル・円のチャート'); xlabel('日付'); ylabel('レート');
grid on;
print('-dpng','-r100','usdjpy_chart.png');
%----------------- MATLABのソース -----------------%



実行の結果


0 件のコメント: