如何在for循环中绘制? Matlab的

时间:2018-12-02 04:37:21

标签: matlab matlab-figure

我试图绘制从x中的点到t的不同值的直线,从而在for循环中形成一条线。但是我看不到在MATLAB中的图中生成任何行

以下是我的代码:

 t=linspace(0,8,11)
xs=(1.+t).^0.5
x0=xs./(1.+t)
m=size(t)
n=max(m)
hold on
for k=1:n
plot(x0(k),t(1:k),'-')
 hold on
end

谢谢

2 个答案:

答案 0 :(得分:2)

您不需要循环即可执行绘图。

plot(x0,t,'-')

一切正常!除非您试图绘制点,否则请使用scatter()

scatter(x0,t)

plot()scatter()(以及Matlab的大多数功能)旨在与向量一起使用,如果您习惯于传统的编程语言,则可能需要一些时间才能习惯。就像不需要循环来创建向量x0一样,也不需要循环来使用plot()

答案 1 :(得分:0)

您要在X轴上的一条直线的Y轴上添加一个点

t=linspace(0,8,11)
xs=(1.+t).^0.5
x0=xs./(1.+t)
m=size(t)
n=max(m)
hold on
for k=1:n
plot(x0(1:k),t(1:k),'-')
hold on
end

为了获得更多乐趣,并确切了解for的执行方式,请使用此for循环

for k=1:n
pause('on')
plot(x0(1:k),t(1:k),'-')
hold on
pause(2)
end