注意:此问题与使用spectrogram
函数无关,它处理数据表示。
我设计了自己的函数来计算频谱图,因为我需要一个输入和参数类型的自定义解决方案。它运作得很好,但我很难搞制作输出图。
目标是使用例如surf(X,Y,Z)
,x,y轴像往常一样代表时间和频率。我有一个矩阵spectg
,其中包含频谱图系数,矢量f
(频率)和矢量t
(时间)。
请您分享用于绘制此内容的代码。我错过了meshgrid
非常简单的事情 - 可能有糟糕的一天......
谢谢!
答案 0 :(得分:1)
您甚至不需要meshgrid
。来自documentation,
surf(x,y,Z)
和surf(x,y,Z,C)
,替换了两个矢量参数 前两个矩阵参数必须有length(x) = n
和length(y) = m
其中[m,n] = size(Z)
。在这种情况下,顶点 表面贴片的三元组是三元组(x(j),y(i),Z(i,j))。 请注意,x
对应于Z
和y
对应的列 行。
例如:
s = randi(10,4,5); %// example data
x = 10:10:50; %// example x, of length size(s,2);
y = 21:24; %// example y, of length size(s,1);
surf(x,y,s)
给出