get xlabel,ylabel,title from premade plots
10 views (last 30 days)
Show older comments
I know I can get these values from regular plots I make, either with a plot handle or with get(get(gca,'property'),'String'), like this:
plot(1:10)
xlabel('x label that I wrote')
get(get(gca,'XLabel'),'String')
However, I can't seem to do that for "premade" plots, ones that MATLAB makes automatically. For example, it doesn't work for rlocus and lsim. I'll show that here:
H=tf([1],[1 1])
rlocus(H)
get(get(gca,'XLabel'),'String')
While it's true that I can access it from the plotting window and change the labels manually, I hope there's a more efficient way to do it. (I'm trying to change the color of the labels.)
Any help would be super appreciated. Upvote for reading. You're all pros.
0 Comments
Accepted Answer
Voss
on 13 May 2022
I don't think this will work for every premade plot, but it seems to work for plots created with rlocus
H=tf([1],[1 1]);
rlocus(H);
% apparently there are two axes, and the one you want has
% HandleVisibility set to 'off'.
% use findall to find it:
ax = findall(gcf(),'Type','axes')
set(get(ax(1),'XLabel'),'Color','m')
set(get(ax(1),'YLabel'),'Color','g')
set(get(ax(1),'Title'),'Color','r')
More Answers (0)
See Also
Categories
Find more on 2-D and 3-D Plots 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!