# matlab plot in real time

3 views (last 30 days)
jianlong huang on 11 Dec 2015
Commented: Geoff Hayes on 7 May 2020
just a really simple problem, how can I plot this diagram in real time. I want those red crosses plotted on to my graph one by one rather than all of them at the same time.
A=[1:10];
B=[1:10];
B=0;
for B=[1:10]
temp=A(B);
B2=num2str(B);
plot(A,'rx')
pause(0.2)
end Geoff Hayes on 11 Dec 2015
jianlong - try using the hold on command to retain the current plot when adding new ones. For example
hFig = figure;
hold on;
A=[1:10];
for k=1:10
plot(k,A(k),'rx')
pause(0.2)
end
Note how I have removed the B and the temporary variables and just access the element of A on the kth iteration as A(k).
##### 2 CommentsShowHide 1 older comment
Geoff Hayes on 11 Dec 2015
With
hFig = figure;
I am just creating a figure (to draw your plot on) and storing its handle in hFig. It isn't necessary for the above example, but if you need that handle for further processing then you have it ready to use.

### More Answers (2)

Joseph Cheng on 11 Dec 2015
no idea what you're doing with A or B especially with defining B but then using it as the indexer in the for loop but get what you can from the example:
A=[1:10];
figure(1),hold on,axis([0 10 0 10])
for ind=[1:10]
plot(ind,A(ind),'rx')
pause(.1)
end

anil simsek on 6 May 2020
I have Arduino code, I want to draw it instantly in matlab. Can you help me ?
##### 1 CommentShowHide None
Geoff Hayes on 7 May 2020
anil - you will need to post some of your code so we can get an idea of what you are attempting. Also,this isn't an answer to the original question so please delete and add as a comment or create your own question.