Как построить график внутри цикла?Matlab - PullRequest
0 голосов
/ 02 декабря 2018

Я пытаюсь построить прямую линию от точки в 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 голосов
/ 02 декабря 2018

Вы добавляете одну точку на оси Y вдоль линии по оси X, используйте этот код

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 k=1:n
pause('on')
plot(x0(1:k),t(1:k),'-')
hold on
pause(2)
end
0 голосов
/ 02 декабря 2018

Вам не нужен цикл для выполнения сюжета.

plot(x0,t,'-')

Будет отлично работать!Если вы не пытались построить точки ... используйте scatter() для этого:

scatter(x0,t)

plot() и scatter() (и большинство функций Matlab) предназначены для использования с векторами, которые могутПотратьте некоторое время, чтобы привыкнуть, если вы привыкли к традиционным языкам программирования.Точно так же, как вам не нужен цикл для создания вектора x0, вам не нужен цикл для использования plot().

...