matlab学习

处理不同区的改进代码

2019-03-01  本文已影响0人  李药师_hablee

代码

%%
a_32_384_sum=zeros(32,384);
%创建0矩阵用于相加
for i=1:1:40
    a_32_384_sum=a_32_384_sum+EEG.data(:,:,i);
%访问a的40页数据加起来
end

a_ave=a_32_384_sum/40;
%除以40页求平均;这个时候就把数据转成 32*384 的二维平均後的数据了

%%
%如果3,4,5列代表前额,把第3、4、5行数据加起来
frontal=(a_ave(3,:)+a_ave(4,:)+a_ave(5,:))/3;
%由于时间是[-1,2],采样率是128 Hz,所以
time=-1:1/128:2;
%注意这个时候 time 的 size 是 1*385,所以我们需要在frontal数据后面添一个0
frontal=[frontal 0];
%这个时候 time-frontal 的数据维度就一致了

%%
%如果21,22,23列代表顶区,把第21,22,23行数据加起来
parietal=(a_ave(21,:)+a_ave(22,:)+a_ave(23,:))/3;
parietal=[parietal 0];


%%
%开始画图
plot(time,frontal,'b-',time,parietal,'g-');
title('前额和顶区在condition1下的比较');

%添上Xlabel和Ylabel
xlabel('t = -1s to 2s');
ylabel('values of ERP');
%设定x轴步长和步长的label
set(gca,'xticklabel',-1000:500:2000);

%设定坐标轴字体和字体大小
set(gca,'fontname','楷体');
set(gca,'FontSize',25);

%但是我们还需要标注0点,再画一根垂直于x轴的直线
%画一条垂直x轴的线,前面是2个点的横坐标,后面是纵坐标
line([0,0],[-20,40],'color','m');

%添上图例,只要对应写上先后画出的函数就好了;加上title
legend('前额ERP','顶区ERP','时间0点');

输出

untitled.jpg
上一篇下一篇

猜你喜欢

热点阅读