function out = plotCorr(data1,data2,range,bin) % 相互相関ヒストグラムの表示 % figureハンドル = plotCorr(data1, data2, 試行範囲, ビン) out = figure('Position',[0 0 600 600]); half=(bin-mod(bin,2))/2; %%% 1/2ビン Max=200-mod(200,2*half)+half; %%% ビン幅×奇数=全範囲 に設定 nbin=(Max/half-1)/2; %%% 0代表点を除いた片側ビン数 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 自己相関ヒストグラム1 ha=subplot('Position', [0.05 0.6 0.4 0.35]); %%% 表示位置指定 tmp=lagHist(data1, data1, range, Max); %%% スパイク時刻差ヒストグラム auto=zeros(nbin+1,1); for i=1:nbin auto(i+1)=mean( tmp( ((2*i-1)*half+1):((2*i+1)*half), 3) ); %%% 幅 bin 内で平均をとる end auto(1)=mean(tmp(1:half,3)); stairs([0 half:2*half:Max], [auto; 0]); %%% 階段プロットで表示 xlabel('Interval [ms]'); title('Auto-correlogram 1'); set(ha,'ylim',[0 2]); set(ha,'xlim',[0 Max]); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 自己相関ヒストグラム2 ha=subplot('Position', [0.55 0.6 0.4 0.35]); %%% 表示位置指定 tmp=lagHist(data2, data2, range, Max); %%% スパイク時刻差ヒストグラム auto=zeros(nbin+1,1); for i=1:nbin auto(i+1)=mean( tmp( ((2*i-1)*half+1):((2*i+1)*half), 3) ); %%% 幅 bin 内で平均をとる end auto(1)=mean(tmp(1:half,3)); stairs([0 half:2*half:Max], [auto; 0]); %%% 階段プロットで表示 xlabel('Interval [ms]'); title('Auto-correlogram 2'); set(ha,'ylim',[0 2]); set(ha,'xlim',[0 Max]); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 相互相関ヒストグラム ha=subplot('Position', [0.1 0.1 0.8 0.35]); %%% 表示位置指定 tmp=lagHist(data1, data2, range, Max); %%% スパイク時刻差ヒストグラム histo=zeros(2*nbin+1,1); n0=nbin+1; %%% 0代表点 for i=1:nbin histo(n0-i)=mean( tmp( ((2*i-1)*half+1):((2*i+1)*half), 1) ); histo(n0+i)=mean( tmp( ((2*i-1)*half+1):((2*i+1)*half), 3) ); %%% 幅 bin 内で平均をとる end histo(n0)=mean([tmp(1:half,1); tmp(1,2); tmp(1:half,3)]); stairs(-Max:2*half:Max, [histo; 0]); %%% 階段プロットで表示 xlabel('Interval: t1-t2 [ms]'); title('Cross-correlogram'); set(ha,'xlim',[-Max Max]); set(ha,'ylim',[0 2]);