How do you pull data from a text box, and set it to plot?

2 views (last 30 days)
Hello all, I have created a GUI that can do simple math by adding subtraction etc... and puts the results into a text box. What I want to do is take that single digit and plot it on a plane, I already know how to plot a graph if you hard type it in, but I want it to change with the calculated value. So I know it will be something like..
plot( function EXAMPLE, but I don't know how it goes after this.
I already have the push button to plot and the graph to have it plot on, I just need the correct coding to pull TEXT BOX A and graph that value!
Hope this makes sense

Accepted Answer

Geoff Hayes
Geoff Hayes on 15 Oct 2014
Grant - presumably you are plotting the result of the calculation on an axes that is a part of your GUI. So in the callback to your push button, just do something like the following
function pushbutton1_Callback(hObject, eventdata, handles)
% get the data from text box A
data = str2num(char(get(handles.text1,'String')));
% do something with the data
% now plot it on the axes/graph
plot(handles.axes1,...);
The above assumes that you are using GUIDE to develop your GUI. The tag for your text box A is text1 and the tag for the axes is axes1.
  5 Comments
Grant
Grant on 16 Oct 2014
First thank you for your help, I am obviously not very proficient at this yet.
I wouldn't need it to clear out previous points that I have plotted but it would only plot one point at a time. If it is an extra step to keep previously plotted points, or if it an extra step to clear out previous plotted points, it doesn't have to happen. Whatever is simple.
Again thank you for your help, our professor has simply given us the users manual for MatLab with ZERO previous programming or code writing experience!
Grant
Geoff Hayes
Geoff Hayes on 16 Oct 2014
I suspect that the way it is working now is that the previous points are being cleared out. If you want to keep them, then in the OpeningFcn of your GUI, you could do something like
hold(handles.axes,'on');
which will retain previous calls to plot for the specified axes (i.e. previous plots won't be deleted).

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!