Add more data and draw a line through the points

Hello, I have created a function and each time it gives me a point of data. I use hold on/hold all for plotting these results and I obtain a series of points. Is there a way to join this points through a line for the final plot? Thanks in advance.

1 Comment

Stored the results of calling your function in an array and then just plot the whole array of results in one instruction afterwards.

Sign in to comment.

Answers (2)

Jan
Jan on 21 Jun 2017
Edited: Jan on 21 Jun 2017
Result = zeros(1, 100);
for k = 1:100
Result(k) = rand; % or your external function
end
plot(Result)
Or if there is any good reason to create the diagram in steps:
figure;
axes;
LineH = line(1, 1);
for k = 1:100
YourSubFunction(LineH);
pause(0.02);
drawnow;
end
function YourSubFunction(LineH)
oldX = get(LineH, 'XData');
oldY = get(LineH, 'YData');
X = rand;
Y = oldY(end) + 0.5 + rand;
set(LineH, 'XData', [oldX, X], 'YData', [oldY, Y]);
end

Tags

Asked:

on 21 Jun 2017

Answered:

on 21 Jun 2017

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!