The legend option called interpreter latex does not display the latex symbols correctly

23 views (last 30 days)
If I use Interpreter latex in the legend, the latex text is not correctly displayed
plot(1:10,1:10,'DisplayName','\eta_i')
line(1:10,5./((1:10).^2),'color','red','DisplayName','A_{[1,2)}');
legend('Interpreter','latex')
Warning: Error updating Legend.

String scalar or character vector must have valid interpreter syntax:
A_{[1,2)}
Instead, if I do not call Interpreter latex in the legend, the latex symbols are correctly interpreted. Why? I would expect the opposite...
plot(1:10,1:10,'DisplayName','\eta_i')
line(1:10,5./((1:10).^2),'color','red','DisplayName','A_{[1,2)}');
legend

Accepted Answer

Star Strider
Star Strider on 20 Feb 2024
You need to put dollar signs ($) around the string you send to the LaTeX interpreter —
plot(1:10,1:10,'DisplayName','$\eta_i$')
line(1:10,5./((1:10).^2),'color','red','DisplayName','$A_{[1,2)}$');
legend('Interpreter','latex')
That also explains the error that was thrown.
.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!