s=linspace(-3,3);
x=cosh(s);
y=sinh(s);
plot(x,y)
hold on
plot(-x,y)
%until here good plots
close all
x=[x,-x];
y=[y,y];
plot(x,y)
%above plot adds a line
基本上当我将矩阵叠加在一起时,Matlab会出于某种原因添加一条线。
答案 0 :(得分:1)
因为plot
使用线性插值线连接所有点。由于sinh(y(end))
不等于sinh(y(1))
,并且当您绘制y2 = [y,y]
y2
时,这两个点在您的NaN
中相邻,MATLAB将在这两个点之间进行线性插值,从而线性地插入。 / p>
如果你不想要这一行,但你想把它作为一个系列进行绘制,那么试着在你需要的地方添加x2 = [x, NaN, -x];
y2 = [y, NaN, y];
plot(x2,y2)
,即
53x63x46