这与我的一个老问题有关。我试图在f_k(t)=t+k
中绘制函数1<=k<=10
的图形,但每当我编写以下代码时
syms t;
k=1;
while k<=6;
f_k(t)=k+t;
ezplot(f_k,[0,5]);
k=k+1;
end;
它运行得很完美,只给我f_6(t)=t+6
的图表。我检查了替换6乘10,同样的事情发生。我检查了代码,无法检测到任何逻辑错误。我也试过1)在while循环中使用@(t)
和函数命令,2)也使用for循环,但由于还有其他错误,因此无法绘制。
a)我的代码究竟出了什么问题? b)如何在没有最小修正的情况下解决这个问题?
答案 0 :(得分:2)
每次拨打ezplots
时,都会覆盖当前数字。调用hold on
以便在代码之后不会覆盖该数字以及hold off
以允许再次覆盖。
此外,我建议使用for循环而不是while。
syms t;
hold on;
for k=1:6
f_k(t)=k+t;
ezplot(f_k,[0,5]);
end
hold off