2014-11-08 36 views
-2

我目前正在一個項目: 繪製數據 - >採取fft - >應用過濾器 - >逆fft - >繪製出結果。Matlab:動畫的情節和fft

代碼已經寫出。但是,因爲我們正在做這個演示,我們的觀衆希望看到一些「動態」或動畫與matlab。

因此,我想知道如果我們可以有任何想法來促進這個動畫在MATLAB中?

fileID = fopen('data.txt'); 
dataRead = textscan(fileID,'%f %f %f'); 
Fs=1000; 
Time=dataCol(:,1); 
Data=dataCol(:,2); 
figure; plot(Time,Data); 
frequency=(linspace(-0.5,0.5,length(Data))*Fs); 
F=fftshift(fft(Data)); 
figure; plot(frequency,abs(F)); %plot the magnitude frequency spectrum; 

%now apply filter; 
mask=zeros(1, length(F)); 
mask(length(F)/2-2 : length(F)/2+2)=1; 
New_F=mask.*F; 

%show the frequency spectrum after apply the filter. 
figure, plot(frequency, abs(New_F)); 

% do ifft; 
new_data=ifftshift(ifft(New_F)); 
plot (Time, new_data); 
+0

您可以將圖形寫成動畫gif中的框架。 – AnonSubmitter85 2014-11-08 17:34:55

+0

您能否詳細說明一下? – kuku 2014-11-08 17:58:56

+0

只是谷歌'matlab動畫GIF'或類似的東西。 – AnonSubmitter85 2014-11-08 18:10:00

回答

0

以下對您有幫助嗎?

您可以使用uiopen()以交互方式打開文件並獲取文件名。它將打開一個包含文件夾位置的標準文件打開對話框。那會在那裏添加一些視覺材料。還使用inputdlg("Plese enter bla bla bla")將幫助您使用文本框獲取數據。你可以從中獲得Fs,Time和Data。此外,一旦你承擔一切,顯示msgbox("All done!")讓用戶知道它已完成。

另一種選擇是簡單地設計一個GUI窗口,其中右半部分將顯示您的情節,左半部分將包含所有文本框以捕獲文件名,數據等。MATLAB GUI構建器應該能夠幫助您構建那在5-6分鐘內。