MATLAB: GUI Handles

guiguidehandle

I am trying to make a multi windowed GUI I am using the function setappdata(…) to pass information between the two GUI. I do not want to use the root ('0') to store the data because I dont know what will happen if I want to create an executable of the GUI. When I use the handle of the main window called POWERMODEL to get the data in the subgui it plots the data I am trying to plot in the main gui window
PV = getappdata(0, 'PV'); plot(PV.signals.values(:,1),PV.signals.values(:,2)) axis([0 0.6 0 0.5])
I can think of two workaround 1) figure out how to reset the default handle to the subgui 2) tell plot to plot to the proper place
Can someone tell me how to do it either way

Best Answer

Your two work arounds are right on. When you create the axis you want to plot into (possibly with subplot), it will return a handle ...
hax = subplot(2,2,1);
You need to save this handle (hax) into the app data. Then you can either call (your solution 1)
axes(hax)
plot(x, y)
or (your solution 2)
plot(hax, x, y)