我试图绘制从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
谢谢
答案 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