给定若干一维点,进行线性差值,增加了正太噪声
Matlab代码
%% 初始数据准备
% 原始数据
x=[-60 -22 -6 0 11 15 70];
y=[0 0.43 1.6 1.89 1.65 0.64 0];
[~,num]=size(x);% 获取数据量
% 对x和y进行分段并且对应
xx=[];
yy=[];
NumPts=150;
for i=1:(num-1)
newrow=linspace(x(i),x(i+1),NumPts);
newcol=linspace(y(i),y(i+1),NumPts);
xx=[xx,newrow];
yy=[yy,newcol];
end
% 添加随机噪声
[~,ysize]=size(yy);
amp=0.18;
% ynoise=amp*(rand(1,ysize)-1);
ynoise=normrnd(0,amp/6,1,ysize);
yy=yy+ynoise;
yy=yy-yy(1);
figure(1)
plot(xx,yy);