❶ 如何用matlab畫時頻圖
plot,如果來要從文件讀數據源還要用到fopen,fscanf等,查看matlab幫助
例:
fid=fopen([pathname filename],'r');
x=fscanf(fid,'%f',[1,inf]); %按行讀入原始信號數據
h=findobj('Tag','cypl');
sf=str2double(get(h,'string'));
nt=length(x);
t=0:1/sf:100/sf;
plot(H1,t,x(1:101));
xlabel('時間(s)');
ylabel('幅值');
title('輸入數據的時程曲線圖');
grid on
❷ 怎麼在matlab上安裝工具箱
1.把工具箱解壓到一復個地方制
2.打開matlab
3.File
->
Set
Path...
->
Add
with
Subfolders...
->選擇剛才解壓的文件夾
這樣就添加完成了,你就可以調用工具箱中的函數了。我添加了個時頻分析的工具箱,就這樣操作,可以使用。
❸ matlab里有什麼工具箱,可以用FFT(快速傅立葉變換)做頻譜分析
1、采樣數據導入Matlab 。
采樣數據的導入至少有三種方法。
第一就是手動將數據整理成Matlab支持的格式,這種方法僅適用於數據量比較小的采樣。
第二種方法是使用Matlab的可視化交互操作,具體操作步驟為:File --> Import Data,然後在彈出的對話框中找到保存采樣數據的文件,根據提示一步一步即可將數據導入。這種方法適合於數據量較大,但又不是太大的數據。
第三種方法,使用文件讀入命令。數據文件讀入命令有textread、fscanf、load等,如采樣數據保存在txt文件中,則推薦使用 textread命令。如[a,b]=textread('data.txt','%f%*f%f'); 這條命令將data.txt中保存的數據三個三個分組,將每組的第一個數據送給列向量a,第三個數送給列向量b,第二個數據丟棄。命令類似於C語言,詳細可查看其幫助文件。文件讀入命令錄入采樣數據可以處理任意大小的數據量,且錄入速度相當快,一百多萬的數據不到20秒即可錄入。
2、對采樣數據進行頻譜分析 。
頻譜分析自然要使用快速傅里葉變換FFT了,對應的命令即 fft ,簡單使用方法為:Y=fft(b,N),其中b即是采樣數據,N為fft數據采樣個數。一般不指定N,即簡化為Y=fft(b)。Y即為FFT變換後得到的結果,與b的元素數相等,為復數。以頻率為橫坐標,Y數組每個元素的幅值為縱坐標,畫圖即得數據b的幅頻特性;以頻率為橫坐標,Y數組每個元素的角度為縱坐標,畫圖即得數據b的相頻特性。典型頻譜分析M程序舉例如下: clc fs=100;
t=[0:1/fs:100];
N=length(t)-1;%減1使N為偶數 %頻率解析度F=1/t=fs/N
p=1.3*sin(0.48*2*pi*t)+2.1*sin(0.52*2*pi*t)+1.1*sin(0.53*2*pi*t)... +0.5*sin(1.8*2*pi*t)+0.9*sin(2.2*2*pi*t);
%上面模擬對信號進行采樣,得到采樣數據p,下面對p進行頻譜分析
figure(1) plot(t,p); grid on
title('信號 p(t)'); xlabel('t') ylabel('p') Y=fft(p);
magY=abs(Y(1:1:N/2))*2/N; f=(0:N/2-1)'*fs/N; figure(2)
%plot(f,magY);
h=stem(f,magY,'fill','--');
set(h,'MarkerEdgeColor','red','Marker','*') grid on
title('頻譜圖 (理想值:[0.48Hz,1.3]、[0.52Hz,2.1]、[0.53Hz,1.1]、[1.8Hz,0.5]、[2.2Hz,0.9]) '); xlabel('f (Hz)') ylabel('幅值')
對於現實中的情況,采樣頻率fs一般都是由采樣儀器決定的,即fs為一個給定的常數;另一方面,為了獲得一定精度的頻譜,對頻率解析度F有一個人為的規定,一般要求F<0.01,即采樣時間ts>100秒;由采樣時間ts和采樣頻率fs即可決定采樣數據量,即采樣總點數N=fs*ts。這就從理論上對采樣時間ts和采樣總點數N提出了要求,以保證頻譜分析的精準度。
❹ 我要用Matlab做一個離散信號的Wigner分布,調用了tfrwv函數,但做出來的wigner分布不對,求一個示常式序。
關於時頻工具箱,我倒沒用過。我做數據一般都是用FFT,然後設計濾波演算法。
關於你的問題,我查了一下,這邊有一個步驟,供你參考下。
詳細步驟:
1、x=sig;(也就是你要處理的信號)
2、如果信號是實信號,則求其解析信號:y=hilbert(x);
3、求其WVD,[tfr,t,f]=tfrwv(y);
4、作圖:contour(t,f,tfr),其中f為歸一化頻率,可以乘上信號的采樣頻率的一般還原,看其頻率分布,另外tfr ,最好寫成abs(tfr),做出的圖好看。
❺ matlab 如何調用時頻分析工具箱
找到工具箱是指toolbox嗎 ?之後怎麼辦呢?麻煩說具體一點,要是有圖就更好了。新手報到
❻ matlab 時頻分析工具箱怎麼使用
將文件夾拷貝到MATLAB下work目錄中。
在MATLAB中file菜單下的setpath中添加整個work目錄後保存。