switch PopUpMenu
Publicado por Meri (4 intervenciones) el 22/12/2017 11:11:59
Tengo un problema con el cambio de Data en el popupmenu
El botón lo quiero utilizar para mostrar dos gráficos según la opción seleccionada (HVAC/HVDC)
Las dos funciones se han escrito en el opening function y las muestro por si es de ayuda.
En el callback del popupmenu es donde tengo el problema. Al cambiar de uno a otro no cambia la función mostrada. No se qué estoy haciendo mal.
Gracias por vuestra ayuda!
El botón lo quiero utilizar para mostrar dos gráficos según la opción seleccionada (HVAC/HVDC)
Las dos funciones se han escrito en el opening function y las muestro por si es de ayuda.
En el callback del popupmenu es donde tengo el problema. Al cambiar de uno a otro no cambia la función mostrada. No se qué estoy haciendo mal.
Gracias por vuestra ayuda!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
function Comparacio_OpeningFcn(hObject, eventdata, handles, varargin)
%dataset 1
x=0:1:500;
Ptransfercomp = sqrt(max(0, (((6*188.6203)^2)-((0.5*7.8441*x).^2))));
Plost = max(0, -(Ptransfercomp-0.4*1000));
HVAC=[];
for i=1:size(x,2)
if x(i)<269.9299
HVAC(i) = 164.4169+x(i)*7.5310+4.4795*(1e-06)*(x(i)^3)+(Plost(i)*8765.81*100*20)/1000000;
elseif x(i)>269.9299
HVAC(i) = 164.4169+x(i)*7.5310+4.4795*(1e-06)*(269.9299^3)+(Plost(i)*8765.81*100*20)/1000000;
end
end
plot(x',HVAC','o')
handles.HVAC = HVAC;
%dataset 2
x=0:1:500;
HVDC=[];
for i=1:size(x,2)
HVDC(i) = 544.4912+(1.4764*x(i));
end
plot(x',HVDC','o')
handles.HVDC = HVDC;
handles.currentData = handles.HVDC;
handles.currentData = handles.HVAC;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function PopUpMenu_Callback(hObject, eventdata, handles)
% hObject handle to PopUpMenu (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
str = get(hObject, 'String');
val = get(hObject, 'Value');
switch str(val)
case 'HVAC'
handles.currentData = handles.HVAC;
set(handles.HVAC);
case 'HVDC'
handles.currentData = handles.HVDC;
set(handles.HVDC);
end
%save handles structure
guidata(hObject, handles);
Valora esta pregunta
0