x = -10:0.01:10;
y = sin(x.^2).*(x<-1)+log(x+4).*(x>=-1);
plot(x,y);
grid on;
axis([-10,10,-6,6]);
sin图像单独绘制时是完整的,其他函数叠加时图像是完整的。但是叠加log(x+a)时,图像会在x=a处破损
这是我的目标图像的功能。是不是我的实现方式不对?请改正。 刚接触MATLAB,不知道解决办法。希望能得到有效解决。谢谢。英语来自机器翻译,请见谅
您的选择方法,乘以布尔值,不能很好地与
log(0)
一起玩,即-Inf
。无穷大和零相乘得到NaN
(不是数字),这会污染方程的其余部分并且无法绘制。相反,一种方法是在应用函数之前执行选择并连接结果:
x = -10:0.01:10;
y = [sin(x(x<-1).^2), log(x(x>=-1)+4)];
plot(x,y);
grid on;
axis([-10,10,-6,6]);