font format in second y-axis
5 views (last 30 days)
Show older comments
Hello,
how can I change the font-style of the numbers of my second y-axis? For the first it is no problem for me. I want the font LaTeX.
I have following matlab-code:
if true
figure;
hold on;
grid on;
[ax, h1, h2] = plotyy(t, y1, t, y2);
set(gca, 'FontName', 'Times New Roman');
set(get(gca, 'xlabel'), 'interpreter', 'latex');
set(get(gca, 'xlabel'), 'FontName', 'latex');
set(get(gca, 'ylabel'), 'interpreter', 'latex');
set(get(gca, 'ylabel'), 'FontName', 'latex');
set(legend(), 'interpreter', 'latex');
set(legend(), 'FontName', 'latex');
set(gcf, 'WindowStyle', 'normal');
set(get(gca, 'ylabel'), 'interpreter', 'latex');
set(get(gca, 'ylabel'), 'FontName', 'latex');
set(ax(2), 'FontName', 'latex');
set(ax,{'ycolor'},{'k';'k'})
set(gca,'ytick',[-100:10:100])
set(ax(2),'YTick',[-100:20:100])
end
Thank you!
2 Comments
Answers (2)
Chibuzo Nnonyelu
on 27 Jan 2018
To label the axis in LaTeX font or style, use
set(gca, 'DefaultTextInterpreter', 'Latex');
This makes all LaTeX the default interpreter for all the axes.
0 Comments
Thomas Ferriday
on 18 Nov 2023
Use the function yyaxis instead of the plotyy. I achieved dual y-axes with latex formatting as such
x = linspace(1,10,100);
h = figure;
plot(x,sin(x),'k','LineWidth',2)
hold on
grid
yyaxis left
axesH = gca;
axesH.XAxis(1).TickLabelInterpreter = 'Latex';
axesH.XAxis(1).TickLabelFormat = '\\textbf{%g}';
axesH.YAxis(1).TickLabelInterpreter = 'Latex';
axesH.YAxis(1).TickLabelFormat = '\\textbf{%g}';
yyaxis right
axesH.YAxis(2).TickLabelInterpreter = 'Latex';
axesH.YAxis(2).TickLabelFormat = '\\textbf{%g}';
axesH.YColor = 'b';
plot(x,cos(x),'b--','LineWidth',2)
Following the correct sequence is important here, otherwise the latex formatting will not carry over to the second y-axis.
0 Comments
See Also
Categories
Find more on Annotations in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!