simple matlab GUI to display the plot and a count value
Show older comments
Hello,
I am working with reading the values form serial comport and I want to display the plot generated from the values fro every 1 sec or 2 sec. Aslo I want to display the value of count updating on the GUI. Can someone guide me with the building.
Thanks.
Answers (1)
Walter Roberson
on 29 Nov 2013
0 votes
For something like this you might not need more than a figure() with an axes() that is plotted into; perhaps with a text() or uicontrol('Style', 'text') object thrown in to display the count.
For the serial port portion, see your other question http://www.mathworks.co.uk/matlabcentral/answers/107921-reading-with-serial-port-in-matlab
6 Comments
Stefan
on 29 Nov 2013
Walter Roberson
on 29 Nov 2013
fignum = figure('Units', 'norm', 'Position', [.2 .2 .7 .7]); %part of screen
thisax = axes('Units', 'norm', 'Position', [0 0 .9 1]); %not full height
box1 = uicontrol('Style', 'text', 'Units', 'norm', 'Position', [.4 .9 .1 .09], 'String', 'Value');
box2 = uicontrol('Style', 'text', 'Units', 'norm', 'Position', [.51 .9 .2 .09]);
for i = 1 : 500 : 1500
for k = i : i + 499;
u(k) = k;
end
plot(u, 'Parent', thisax);
title(sprintf('Peakvalue = %f', k));
set(box2, 'string', sprintf('%f', k));
end
Walter Roberson
on 30 Nov 2013
See Vincent's code here for an example of plotting more efficiently -- the part about updating XData and YData on existing line() or lineseries() objects instead of doing a complete plot()
Stefan
on 1 Dec 2013
Walter Roberson
on 2 Dec 2013
For thisax use [0 0 1 0.75]
I think I got the two box positions roughly right, but their width and relative positioning might need to be adjusted.
If you want one box to be above the other instead of to the left of the other, make sure the two have the same x coordinate instead of having the same y coordinate. The order goes [x, y, width, height]
If you don't want the title inside the plot at all, remove the title() call.
Categories
Find more on Specifying Target for Graphics Output in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!