フィルターのクリア

visualise fft plot in 3D

60 ビュー (過去 30 日間)
Athira Surendran
Athira Surendran 2017 年 4 月 4 日
Hi,
I want to plot all the fft plots in a single figure. something like the attached image
Here's my code
for i=1:m
[f(i,:) mag(i,:)]=fftplot(2000000,corr_amp(i,:));
subplot(3,4,i)
plot(f(i,:),mag(i,:))
axis([25000,85000,0,1.1]);
strtime = ['Frequency Spectrum at \delta=', num2str(load(1,i)),'\mum'];
title(strtime,'fontsize',10)
xlabel('Frequency (Hz)')
ylabel('Magnitude')
grid on
grid minor
end;
this code gives me all fft plots as separate plots in a single figure, but i want to arrange all the fft plots in 3D (third axes is 'load' variable in the .mat file attached) as shown in image to see the variation accurately.

採用された回答

Star Strider
Star Strider 2017 年 4 月 4 日
Use the ribbon (link) plot.
The Code
d = load('Athira Surendran sjs1.mat');
amp = d.amp'; % Amplitude (Transposed)
load = d.load; % Load
t = d.t; % Time
Ts = mean(diff(t)); % Sampling Interval
Fs = 1/Ts; % Sampling Frequency
Fn = Fs/2; % Nyquist Frequency
L = length(t);
FTamp = fft(amp)/L; % Fourier Transform
Fv = linspace(0, 1, fix(L/2)+1)*Fn; % Frequency Vector
Iv = 1:length(Fv); % Index Vector
figure(1)
hr = ribbon(Fv, abs(FTamp(Iv,:))*2, 0.1);
grid on
for k1 = 1:length(hr)
set(hr(k1), 'FaceColor','b', 'EdgeColor','b')
xpos = get(hr(k1), 'XData');
xtix(k1) = mean(xpos(1,:));
end
set(gca, 'XTick',xtix, 'XTickLabel',load)
xlabel('Load')
ylabel('Frequency (Hz)')
zlabel('Amplitude')
view([135, 30])
I believe that I chose the correct variables. If not, changing my code to use the correct ones is straightforward.
The Plot
  1 件のコメント
agung pratama
agung pratama 2020 年 8 月 15 日
編集済み: agung pratama 2020 年 8 月 15 日
Can i transform a 3D surface that x,y,z axis in pixel into mm?

サインインしてコメントする。

その他の回答 (1 件)

KSSV
KSSV 2017 年 4 月 4 日
You may follow something like this:
x = linspace(0,2*pi) ;
N = 10 ;
pos = 1:N ;
figure
hold on
for i = 1:N
z = i*sin(x) ;
y = repmat(pos(i),size(x)) ;
plot3(x,y,z,'r');
end
view(3)
  1 件のコメント
Daniel Esteban Caballeros Tejada
Daniel Esteban Caballeros Tejada 2021 年 2 月 10 日
Tranks, KSSV

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeAnnotations についてさらに検索

タグ

製品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by