Invalid axes handle error with gca?
Ältere Kommentare anzeigen
I'm trying to write a function that places an inset axis on an axis given as an argument among other things, but I keep getting this invalid axes handle error when I try to run:
function aHanNew = magnifyingGlass(aHan, subdomain, insetPosition)
axes(aHan);
aHanNew = axes('position',insetPosition);
end
magnifyingGlass(gca,[0.001 0.1],[.6 .6 .25 .25]);
However when I alter the function to be
function aHanNew = magnifyingGlass(aHan, subdomain, insetPosition)
axes(gca);
aHanNew = axes('position',insetPosition);
end
It works just fine. When I call axes on gca directly it works, but when I call axes on a variable in which gca is stored it doesn't work. Why is this? and how can I get the first function to work correctly?
3 Kommentare
Azzi Abdelmalek
am 12 Jul. 2015
What is the error message?
Mason Scott
am 12 Jul. 2015
Azzi Abdelmalek
am 12 Jul. 2015
I tested your code, there is no error message
Antworten (1)
Jan
am 12 Jul. 2015
Perhaps you have shadowed the function gca by a variable with the same name? You can use the debugger to examine that. Simply set a breakpoinnt in teh offending line and check, what the name points to:
which gca
Kategorien
Mehr zu Specifying Target for Graphics Output finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!