请用matlab将50个声学信号的时域图画在同一张图里,且这前二十个信号红色绘图,后三十个信号用蓝色绘图
时间: 2024-04-16 09:29:18 浏览: 66
利用MATLAB进行信号的时域分析
好的!下面是一个示例代码,用于将50个声学信号的时域图绘制在同一张图上,并按照要求使用不同的颜色进行区分:
```matlab
% 生成示例数据
Fs = 44100; % 采样率
t = (0:1/Fs:1-1/Fs)'; % 时间向量
signals = zeros(length(t), 50); % 存储所有信号的矩阵
% 生成50个信号
for i = 1:20
signals(:, i) = sin(2*pi*1000*t + (i-1)*pi/6); % 前20个信号,红色绘图
end
for i = 21:50
signals(:, i) = cos(2*pi*2000*t + (i-1)*pi/6); % 后30个信号,蓝色绘图
end
% 绘制时域图
figure;
hold on;
for i = 1:20
plot(t, signals(:, i), 'r'); % 前20个信号,红色绘图
end
for i = 21:50
plot(t, signals(:, i), 'b'); % 后30个信号,蓝色绘图
end
hold off;
% 添加标题和标签
title('50个声学信号的时域图');
xlabel('时间 (s)');
ylabel('信号幅值');
% 显示图例
legend('前20个信号', '后30个信号');
```
这段代码会生成一个图像窗口,并在同一张图上绘制50个声学信号的时域图。前20个信号用红色绘制,后30个信号用蓝色绘制。图像窗口还包含标题、坐标轴标签和图例。
你可以将自己的声学信号数据替换示例数据,并根据需要进行调整。希望对你有帮助!如果还有其他问题,请随时提问。
阅读全文