Invalid axes handle error with gca?
6 views (last 30 days)
Show older comments
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 Comments
Answers (1)
Jan
on 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
0 Comments
See Also
Categories
Find more on Specifying Target for Graphics Output in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!