我有时域数据。在使用周期图进行离散傅里叶变换后,如何将图输出到列表中以进行进一步操作?
Periodogram[data[[All, 2]], SampleRate -> 3000000/0.01, GridLinesStyle -> Directive[Red, Dashed], PlotRange -> {{100000000 - 10000, 100000000 + 10000}, All}]
谢谢!
答案 0 :(得分:1)
可以从List
输出中根据Periodogram
提取InputForm
,如下所示。 (我们从一些补充数据开始。)
data = Table[2 Sin[0.2 \[Pi] n ] + Sin[0.5 \[Pi] n] + RandomReal[{-1, 1}], {n, 0, 127}];
plot = Periodogram[data, SampleRate -> 3000000/0.01,
GridLinesStyle -> Directive[Red, Dashed]];
接下来,我们使用Position
在图中找到所需的数量并提取它们。
plot[[First@Position[plot, Line] /. {0 -> 1} /. List -> Sequence]]
(* {{0., -8.99487}, {2.38095*10^6, 1.60543}, {4.7619*10^6, 1.82102}, ... *)
答案 1 :(得分:0)
在这样的实例中通常有一个相关的函数。在这种情况下,PeriodogramArray
输出数据。
data = Table[
2 Sin[0.2 Pi n ] + Sin[0.5 Pi n] + RandomReal[{-1, 1}],
{n, 0, 127}];
Periodogram[data]
magdata = PeriodogramArray[data];
ListLinePlot[10 Log[10, magdata], PlotRange -> {{0, Length[magdata]/2}, All}]