Frequency spectrum - Reading certain y-values

1 次查看(过去 30 天)
Given is the frequency spectrum of a measurement. The x-axis represents the frequency, the y-axis the amplitude. These are stored as individual column vectors. I am now interested in the amplitude values at certain frequencies (e.g., 2,3,4,5 MHz). How can I best "read" these and store them in a separate vector / matrix?
Thanks a lot!
  2 个评论
Adam Danz
Adam Danz 2019-3-27
If you share a sample of your data it would be easier to visualize what's going on.
Mepe
Mepe 2019-3-27
As already described, I would like to read defined x-values with the corresponding y-values. Attached are my measurement.
untitled.jpg
Thanks!

请先登录,再进行评论。

采纳的回答

Adam Danz
Adam Danz 2019-3-27
编辑:Adam Danz 2019-3-27
How can I best "read" these and store them in a separate vector / matrix?
file = 'C:\Users\name\Documents\MATLAB\5M_60°_4_5MHz_20V_C.csv';
num = xlsread(file);
>> size(num)
%ans =
% 16385 2
I am now interested in the amplitude values at certain frequencies (e.g., 2,3,4,5 MHz).
%find freq closest to target
target = 2.0;
[~, closestIdx] = min(abs(num(:,1) - target));
num(closestIdx,:)
%ans =
% 1.9995 -74.481
If you're looking for specific peaks, check out findpeaks() function.

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by