axes handle does not exist in GUI

1 visualizzazione (ultimi 30 giorni)
Edward
Edward il 28 Set 2013
Commentato: Image Analyst il 18 Apr 2016
Hi, i have a GUI that has one axis.
I am trying to use
plot(handles.axes1,...)
but im getting error:
??? Reference to non-existent field
'axes1'.
Also, printing handles to the console shows that there is a handle for every other widget except the axis.
Why is this?
I'm planning on having more than one plot which is why i need to refer to it using a handle.

Risposte (2)

Azzi Abdelmalek
Azzi Abdelmalek il 28 Set 2013
Try to run the .fig file instead of the .m file
  2 Commenti
Jan
Jan il 29 Set 2013
Do you mean the other way around?
Image Analyst
Image Analyst il 29 Set 2013
Running either the fig file from GUIDE or the m-file from MATLAB, either way I don't see that as causing the error. Because he has other widgets ID's attached to handles but not axes1, it's clear that there is no axes1 at all, and it's not caused by a "clear all" or something like that.

Accedi per commentare.


Image Analyst
Image Analyst il 28 Set 2013
Modificato: Image Analyst il 28 Set 2013
Obviously you are mistaken and there is no axes with the tag "axes1" - are you sure you used the right case - MATLAB is case sensitive. Put a breakpoint at that plot line, type handles in the command line, and show us what is there. Are you sure there is no member of handles that is listed there that in not associated with a widget?
  4 Commenti
Kai Lutz
Kai Lutz il 18 Apr 2016
I'm having the same problem as Edward. It arose after I've renamed an axes in GUIDE. It updates the m-file, and creates a new create-fcn with the correct name but somehow handles are not updated. Of course the axes exists (gca reveals all axes) but has no tag. Edwards workaround works, but I guess there must be a problem somewhere in GUIDE.
Image Analyst
Image Analyst il 18 Apr 2016
I rename axes frequently. It will update everywhere that tag was in the m-file, including any existing callback and create functions. For me, it does not create a new callback or create function (it just renames existing ones) nor does it create any axes with no tag. And if you type handles in the command window, it does not have the axes's tag missing from the list of fields in handles - it is there with the new name. I'd be willing to believe you if you prove it by running PSR.exe (in Windows from the Start menu) and show you doing it.

Accedi per commentare.

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by