I want to plot with the value of an Edittext

1 Ansicht (letzte 30 Tage)
Mo_B
Mo_B am 13 Jan. 2017
Kommentiert: Mo_B am 28 Jan. 2017
Hi guys,
I'm currently working on a Guide, I have two Edittextboxes and two Pushbuttons. In the Edittextboxs I want to type in a value and plot some functions with one of the Pushbuttons. So I have to variables, in edittextbox input1 is x and in input2 is g. The range of g is between 0.1 and 1, but x is between 40 and 90.
I hope it's understandable. Thank you very much!
% --- Executes on button press in button1.
function button1_Callback(hObject, eventdata, handles)
% hObject handle to button1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
x = str2num(char(get(handles.input1, 'String'))); %I want to get the edittext (input1)
y1=(0.02049/0.4)*x;
y2=(g*60./(1+(1.331./(sqrt(0.0631*x./(83.17-x))).^3)));
y3=(g*60./(1+(1.331./(sqrt(0.0631*x./(83.17-x))).^3)))-(0.02049/0.4)*x;
y4=(0.02049/0.4)*x-(g*60./(1+(1.331./(sqrt(0.0631*x./(83.17-x))).^3)));
plot(x,y1,'r','LineWidth',2)
hold on
plot(x,y2,'c','LineWidth',2)
plot(x,y3,'g','LineWidth',2)
plot(x,y4,'b', 'LineWidth',2 )
title('metabolisches Profil','FontSize', 15)
xlabel('VO2', 'FontSize', 15)
ylabel('dLak/dmin','FontSize', 15)
legend( 'func.1','func.3','func.4','func.5','FontSize', 12)
axis([0 100 0 5])

Akzeptierte Antwort

Nirav Sharda
Nirav Sharda am 24 Jan. 2017
Bearbeitet: Nirav Sharda am 24 Jan. 2017
I used guidata to achieve this. I am attaching some sample code here for your reference.
This is the callback function for the first edit text box.
function edit1_Callback(hObject, eventdata, handles)
% save the data from the edit text box in the handles structure in double format.
handles.in1 = str2double(get(hObject,'String'));
% Store the handles structure in hObject.
guidata(hObject,handles);
You will have a similar callback for the second edit box. Now the following is the code snippet for the push button callback.
function pushbutton1_Callback(hObject, eventdata, handles)
% get the previously stored data in myh variable.
myh = guidata(hObject);
% get the values of in1 and in2 in variables x and y. These values come from edit text boxes.
x = myh.in1;
y = myh.in2;
figure;
plot(x,y,'r','LineWidth',2);
I hope this helps !

Weitere Antworten (0)

Kategorien

Mehr zu Word games finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by