答案 0 :(得分:1)
从评论中,您要么进行某种插值,平滑或点的子采样。我们来看看所有方法:
这很容易做到。假设您的两个数据点都存储在x
和y
中,您可以指定从数据中抽样的频率。如果您想以每10个点为例进行采样,您可以执行以下操作:
xsample = x(1:10:end);
ysample = y(1:10:end);
plot(xsample, ysample);
plot
将为您提供每个点之间的线性插值。这是plot
的默认行为。
您可以像我们上面那样对您的点进行子采样,然后使用interp1
在“关键点”之间进行插值。我们假设您要进行spline
插值。就这样:
yinterp = interp1(xsample, ysample, x, 'spline');
plot(x, ysample);
如果您有曲线拟合工具箱,则可以使用smooth
功能。 smooth
函数的默认行为是移动平均值。它基本上将您的点放在有限大小的窗口内,对它们求平均值,这是一个样本的输出。平均值为您提供输出,该输出是数据的平滑版本。默认窗口的宽度为5,但您可以指定所需的范围。
ysmooth = smooth(y); %// or you can do ysmooth = smooth(y, N);
%// where N is the size of your smoothing window
plot(x, ysmooth);
NB: N
必须是奇数号码(1,3,5等)
希望其中一种方法适合你!