ボロノイ図は平面的に何かを表現するときに便利。
このブログと同じようにコードを書いているサイト発見(ここ)
参考までにどうぞ。
MATLABのコードって忘れやすい・・・
プログラムのコマンドなんて忘れやすいもの・・・いっそのことネット上に保存してシェアしましょう!!
It's easy to forget command for MATLAB in programming.... Let's share small help for Matlab code with you on the web!!
It's easy to forget command for MATLAB in programming.... Let's share small help for Matlab code with you on the web!!
2010年10月13日水曜日
2010年9月21日火曜日
bar + errorbar
http://www.mathworks.co.jp/support/solutions/ja/data/1-9J8S0T/index.html?product=ML&solution=1-9J8S0Tより抜粋。
BAR 関数で棒グラフを描画し、ハンドルから棒グラフの左端と右端の X 座標を取得して中心値を計算し、中心値に対して ERRORBAR 関数で描画します。
具体的には、下記の手順で行なえます。
1. bar 関数で棒グラフを描画(このとき、出力引数を付けてハンドルを取得)
2. 上記 1 で得られたハンドル各棒グラフの X 座標値を取得し、各棒グラフの
中心座標を計算
3. 上記 2 で計算した X 座標を使用し、 errorbar 関数でエラーバーを描画
以下に例を示します。
% データ定義
Y = round(rand(5,3)*10); % グループ数 3、標本数 5
e = std(Y); % 標準偏差の計算
% 棒グラフの描画
figure, h = bar(Y,'hist'); % ハンドルを取得
hold on
[numgroups, numbars] = size(Y); % numgroups: グループ数, numbars: 標本数
% 各棒グラフのX座標値を取得
xdata = get(h,'XData'); % 出力はセル配列
% X座標から各棒グラフの中心座標を計算
centerX = cellfun(@(x)(x(1,:)+x(3,:))/2,xdata,'UniformOutput', false);
E = repmat(e,numgroups,1); % グラフ表示用にデータを拡張
C = {'b','g','r'}; % エラーバーの色
% 標準偏差を棒グラフに重ねて描画
for i = 1:numbars
errorbar(centerX{i,:}, Y(:,i), E(:,i), C{i},...
'linestyle', 'none','LineWidth',2);
end
なお、このプログラムでは、グループ毎に標準偏差の色分けを行い、さらに ERRORBAR 関数の各点を結ぶ線を非表示にしてプロットしています。
各点を結ぶ線を消すには、出力引数を付けて ERRORBAR 関数を実行後、'LineStyle' プロパティに 'None' を設定します。
また、プログラム内では、各棒グラフの X座標の中心座標を計算する際に、CELLFUN 関数を使用しています。この関数の機能については、関連ソリューションをご覧下さい。
BAR 関数で棒グラフを描画し、ハンドルから棒グラフの左端と右端の X 座標を取得して中心値を計算し、中心値に対して ERRORBAR 関数で描画します。
具体的には、下記の手順で行なえます。
1. bar 関数で棒グラフを描画(このとき、出力引数を付けてハンドルを取得)
2. 上記 1 で得られたハンドル各棒グラフの X 座標値を取得し、各棒グラフの
中心座標を計算
3. 上記 2 で計算した X 座標を使用し、 errorbar 関数でエラーバーを描画
以下に例を示します。
% データ定義
Y = round(rand(5,3)*10); % グループ数 3、標本数 5
e = std(Y); % 標準偏差の計算
% 棒グラフの描画
figure, h = bar(Y,'hist'); % ハンドルを取得
hold on
[numgroups, numbars] = size(Y); % numgroups: グループ数, numbars: 標本数
% 各棒グラフのX座標値を取得
xdata = get(h,'XData'); % 出力はセル配列
% X座標から各棒グラフの中心座標を計算
centerX = cellfun(@(x)(x(1,:)+x(3,:))/2,xdata,'UniformOutput', false);
E = repmat(e,numgroups,1); % グラフ表示用にデータを拡張
C = {'b','g','r'}; % エラーバーの色
% 標準偏差を棒グラフに重ねて描画
for i = 1:numbars
errorbar(centerX{i,:}, Y(:,i), E(:,i), C{i},...
'linestyle', 'none','LineWidth',2);
end
なお、このプログラムでは、グループ毎に標準偏差の色分けを行い、さらに ERRORBAR 関数の各点を結ぶ線を非表示にしてプロットしています。
各点を結ぶ線を消すには、出力引数を付けて ERRORBAR 関数を実行後、'LineStyle' プロパティに 'None' を設定します。
また、プログラム内では、各棒グラフの X座標の中心座標を計算する際に、CELLFUN 関数を使用しています。この関数の機能については、関連ソリューションをご覧下さい。
登録:
投稿 (Atom)