本人大一医电本科,刚接触matlab,最近学习一个项目,要先用gui绘制信号的时域波形,但是信号是用excel格式的,采样频率为1000HZ的肌电信号,现在能将excel导入,但是绘制不了曲线。我按照网上搜集的音频绘制时域波形的代码修改了一下,但是运行时总是出错,有大神指点一下吗,希望能给点思路,初学者感激不尽。信号表格如图,有三个通道,现在写的代码选择的是第二个通道,本人改写的代码如下:
% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
[filename,pathname]=uigetfile('*xls','select the data File');%读取数据文件
if isequal(filename,0)|isequal(pathname,0)
errordlg('没有选中文件','出错');
return;
else
file=[pathname,filename];
[y,Fs]=load(file);%读取文件表格
handles.Y=y;
handles.FS=Fs;
Ts=1/Fs;%采样周期
y=y(:,2);%选择第二通道信号
t=0:Ts:(length(y)-1)*Ts;%设置时域波形时间轴
x=y;
N=2^15;%DFT点数
X=abs(fft(x,N));%傅里叶变换求幅度谱
axes(handles.axes1);
plot(t,x);
xlabel('Time/s');
ylim([-0.06 0.06]);
guidata(hObject,handles)
end