Вам нужно будет определить, какие промежуточные точки вы хотите нарисовать.
Затем вы можете определить их вручную или взглянуть на сплайн-интерполяцию.
При сплайн-интерполяции вам нужна только одна промежуточная точка для определения полной кривой.
В MATLAB вы можете найти демо spline2d
, которое делает что-то вроде этого. Вот суть этого:
% end points
X = [0 1];
Y = [0 0];
% intermediate point (you have to choose your own)
Xi = mean(X);
Yi = mean(Y) + 0.25;
Xa = [X(1) Xi X(2)];
Ya = [Y(1) Yi Y(2)];
t = 1:numel(Xa);
ts = linspace(min(t),max(t),numel(Xa)*10); % has to be a fine grid
xx = spline(t,Xa,ts);
yy = spline(t,Ya,ts);
plot(xx,yy); hold on; % curve
plot(X,Y,'or') % end points
plot(Xi,Yi,'xr') % intermediate point
![Resulting plot](https://i.stack.imgur.com/8es70.png)
В splined2
он используется для большего набора точек, но без промежуточных точек. Если вы просто хотите, чтобы ваши точки были гладко соединены, возможно, стоит взглянуть на них.