Filter löschen
Filter löschen

How do I use Latex formatting in graph node labels?

2 Ansichten (letzte 30 Tage)
Harry Smith
Harry Smith am 14 Jun. 2016
Bearbeitet: Rub Ron am 23 Mär. 2023
For example, I have the following snippet:
A = [0 1 1; 1 0 0; 1 0 0];
names = {'V', texlabel('mu'), 'Q'};
params = graph(A, names);
h = plot(params);
And it yields a graph with a node labelled '{\mu}'. How can I get that to display as a µ character? I've tried setting the default interpreter of the figure to Latex and I've played with the formatting of the string. Thanks.

Antworten (4)

KL
KL am 14 Jun. 2016
Hello,
Replacing 'mu' with '{\mu}' should do the trick. Nevertheless here is a popular link which eases your plot generation for latex
Hope it helps.
  2 Kommentare
Harry Smith
Harry Smith am 15 Jun. 2016
Thank you for the response! Unfortunately, that's not fixing it for me. Do you have any other suggestions? Are you able to take my code and produce Latex'd labels using the suggestion you provided me?
Thanks, Harry
KL
KL am 16 Jun. 2016
bar(1:5)
set(gca,'XTickLabel',{'{\mu}','fgh','10','{\pi}','{\sigma}'})
like this? if you wanna store greek symbols in cell array you need to know the respective ascii code and then use char(ascii_code)

Melden Sie sich an, um zu kommentieren.


Jules BROCHARD
Jules BROCHARD am 26 Mai 2017
Hey, Did you find a way to do it ? I would really appreciate if you could share it with me :)

ABIYA R
ABIYA R am 16 Nov. 2019
names = {'V', '\mu', 'Q'}; and changing 'tex' to 'latex' in the Figure properties editor solved the problem for me.

Rub Ron
Rub Ron am 23 Mär. 2023
Bearbeitet: Rub Ron am 23 Mär. 2023
I have faced the same issue. This is a work around:
% you may need this before executing the code
set(groot,'DefaultTextInterpreter','latex')
set(groot, 'defaultLegendInterpreter','latex');
set(groot, 'defaultAxesTickLabelInterpreter','latex');
%plotting graph
A = [0 1 1; 1 0 0; 1 0 0];
names = {'V', '$\mu$', 'Q'}; % use $$ for the interpreter to read it as a equation
params = graph(A, names);
figure
h = plot(params);
h.NodeLabel = {}; %remove default labels
%creating labels as text
x_offset=0.05;
y_offset=-0.05;
text(h.XData+x_offset, h.YData+y_offset,names, ...
'VerticalAlignment','Bottom',...
'HorizontalAlignment', 'left')

Kategorien

Mehr zu Labels and Annotations finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by