Changing from logarithmically spaced
8 ビュー (過去 30 日間)
古いコメントを表示
I currently have a function which gives me center frequencies, but I want to change the chape to be more like the attached. What I have right now is similar to this but flipped, how can I change my code to give me center frequencies shapes like the image? Thank you for your time!
fs = 20e3;
numFilts = 32; %
filter_number = 5;
order = 4;
CenterFreqs = logspace(log10(50), log10(8000), numFilts);
figure
plot(CenterFreqs)
title('Center Frequncies')
0 件のコメント
回答 (2 件)
Mann Baidi
2024 年 2 月 28 日
編集済み: Mann Baidi
2024 年 2 月 28 日
Hi,
As per the information provided, I can understand that you would like to shape your graph same as the shape of image shared. I would suggest you to plot the data of the 'CenterFreqs' by multiplying it -1 and plot the graph in the -ve -axis. So, basically plotting the mirror image w.r.t the origin (0,0). You can use this modified code:
fs = 20e3;
numFilts = 32;
filter_number = 5;
CenterFreqs = logspace(log10(50), log10(8000), numFilts);
plot(CenterFreqs)
title('Original Graph')
figure
CenterFreqs=-1*CenterFreqs; % Mirror image w.r.t to x-axis
plot(-1:-1:-32,CenterFreqs) % Mirror image w.r.t to y-axis
title('Desired Graph')
Hoping this will help in resolving the issue!
0 件のコメント
Dyuman Joshi
2024 年 2 月 29 日
fs = 20e3;
numFilts = 32;
filter_number = 5;
order = 4;
CenterFreqs = logspace(log10(50), log10(8000), numFilts);
figure
plot(CenterFreqs, 'DisplayName', 'Original Plot')
hold on
%flipping x and y values accordingly
plot(flip(1:numel(CenterFreqs)), max(CenterFreqs)-CenterFreqs, 'DisplayName', 'Modified Plot')
title('Center Frequncies')
legend('Location', 'best')
5 件のコメント
参考
カテゴリ
Help Center および File Exchange で Matrix Indexing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!