How can I change the color and font on the second y axis of a subplot?

118 次查看(过去 30 天)
I have a Matlab subplot:
subplot(4,2,2); plotyy(x,y,x,z)
xlabel('x','FontSize',8); set(gca,'FontSize',8); legend('y','z','Location','Best');
set(legend,'FontSize',8); title('y and z','FontSize',10);
But the font on the right axis is 10, not 8, and the color is blue. I would to change the color and font. Many thanks for any help!

采纳的回答

Azzi Abdelmalek
Azzi Abdelmalek 2014-4-19
Try this
close
x=0:0.1:10;
y=sin(x)
z=cos(x)
subplot(4,2,2);
[ax,h1,h2]=plotyy(x,y,x,z);
hl=legend('y','z','Location','Best');
set(hl,'FontSize',8)
title('y and z','FontSize',10)
xlabel('x','FontSize',8);
set(ax,'FontSize',10);
set(h2,'color','g')
  2 个评论
SSB
SSB 2014-4-19
This is great Azzi, I have adapted your code, which also helped me make some additional changes. Many thanks!
Sara Fawal
Sara Fawal 2020-7-23
Hello Azzi,
Is there a way to set ALL the Y axis colors in a subplot to black using the findall command?
I want to do this: set(findall(gcf, 'ALL Y Axis Colors', 'k'))
Can it be done.
Thank you

请先登录,再进行评论。

更多回答(2 个)

Mischa Kim
Mischa Kim 2014-4-19
编辑:Mischa Kim 2014-4-19
SSB, one way would be to use the plot tools. See icon in the lower right corner in the screen shot:
In the plot tools editor you can select the figure objects and change their properties. Once you are done adapting your figure you can choose > File > Generate Code... and learn how to do all those changes programmatically.
  3 个评论
Mischa Kim
Mischa Kim 2014-4-19
In the plot browser start by selecting the corresponding Axes (no title) and continue by changing properties as needed.
SSB
SSB 2014-4-19
Thanks. For some reason I was just not able to click on the second y-axis, but I think I have it now.

请先登录,再进行评论。


DanielFromIllinois
You can also find the YAxis properties for left and right like so:
fh = figure;
x = 1:10;
y = 1:10;
%pltos on the left axis.
plot(x,y)
%plots on the right axis.
yyaxis right
plot(x,y*2)
%The YAxis object is stored under the Axes child of the figure.
%It has a property 'Color' that you can use to set the color to black.
%The line below will set the color to black.
fh.Children.YAxis(2) = 'k';

类别

Help CenterFile Exchange 中查找有关 Grid Lines, Tick Values, and Labels 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by