LaTeX interpreter is not working correctly with code including subscripts in Control System Toolbox legends

15 visualizaciones (últimos 30 días)
When running the following code:
G1 = tf(1,[1,1,1]);
G2 = tf(1,[1,0.5,1]);
step(G1,G2);
h = legend('$G_1(s)$','$G_2(s)$');
h.Interpreter = "latex";
h.FontSize = 12;
We can observe that the subscripts are not displayed correctly in the legend. I would appreciate any solution for this bug. Thanks!

Respuestas (1)

Steven Lord
Steven Lord el 8 de Ag. de 2022
This is Not a Bug. In LaTeX, A_bc will only treat b as a subscript. In order to include multiple symbols in a subscript (or superscript) you need to group them with curly braces.
For instance, here is A_bc: while here is A_{bc}: .
  2 comentarios
Adolfo Hilario
Adolfo Hilario el 8 de Ag. de 2022
Thanks for your answer, but that is not the problem. Please, look at the code and the results: you will see that no subscript is displayed, nor even the first one (an underscore is displayed instead). So, yes, it is a bug of the Control System Toolbox.
Adolfo Hilario
Adolfo Hilario el 8 de Ag. de 2022
In fact, there is a way to solve this: plotting something into the figure before and overwriting the legend:
figure; hold on;
plot(0,0);
plot(0,0);
G1 = tf(1,[1,1,1]);
G2 = tf(1,[1,0.5,1]);
stepplot(G1,G2);
h = legend('$G_1(s)$','$G_2(s)$');
h.Interpreter = "latex";
h.FontSize = 12;
You can see that the subscripts are correctly displayed now.

Iniciar sesión para comentar.

Categorías

Más información sobre Legend en Help Center y File Exchange.

Productos


Versión

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by