Filter löschen
Filter löschen

How to align of words in matlab legend ?

32 Ansichten (letzte 30 Tage)
MD MOSTAKIM ALAM SOHAG
MD MOSTAKIM ALAM SOHAG am 24 Jan. 2022
Bearbeitet: Niklas Kurz am 23 Jun. 2022
plase share a code for align the words in matlab legend.
  1 Kommentar
Mathieu NOE
Mathieu NOE am 24 Jan. 2022
hello
I assume you know the string length of the words you use in the legend
Decane is one letter shorter compared to Heptane, so simply add one trailling blank to it and you should be good

Melden Sie sich an, um zu kommentieren.

Antworten (1)

DGM
DGM am 24 Jan. 2022
Bearbeitet: DGM am 24 Jan. 2022
So long as a variable-width font is in use, you're going to be fighting it.
y = rand(3,10);
plot(y);
% all three strings have the same number of characters
lstr = {'Heptane 100\circC', ... % note that they all line up here
'Decane 100\circC', ...
'Thing 100\circC'};
legend(lstr)
Tabs don't seem to work either. I can think of two options
  • Use a fixed-width font and add regular spaces as padding
  • Compensate for variable-width fonts by using various space widths
To the latter option, see this:
y = rand(3,10);
plot(y);
lstr = {'Heptane 100\circC', ... % this is the reference line
['Decane' repmat(char(8202),1,10) '100\circC'], ...
['Thing' repmat(char(8202),1,26) '100\circC']};
legend(lstr)
It will vary depending on the font used, and it won't likely be perfect.
  1 Kommentar
Niklas Kurz
Niklas Kurz am 23 Jun. 2022
Bearbeitet: Niklas Kurz am 23 Jun. 2022
It is ludicrous a fully commercial high level program like Matlab offers no proper aligning in legends. Can't it be added with a next patch? For example enable latex standalone documents in legends.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by