Right align text in subtitle

29 vues (au cours des 30 derniers jours)
John Cruce
John Cruce le 12 Sep 2021
Commenté : Chunru le 30 Oct 2021
I've created a multi-line title and I need a second string of text right aligned on the second line:
t = title({['\fontsize{14}','First line'];['\fontsize{10}',sprintf('Second line left aligned %s',stringarray),'Second line right aligned']},'FontWeight','Normal');
I'm striking out on how to do this. Should I create another line of text and try to find the position of the title then right align? Or is there a way to do this within a multi-line title?
  2 commentaires
Adam Danz
Adam Danz le 29 Oct 2021
In Matlab R2020b or later, you can use the subtitle() function along with the TitleHorizontalAlignment and LabelHorizontalAlignment properties.
Chunru
Chunru le 30 Oct 2021
Thanks for introducing the subtitle() function, which may be helpful in many other applications. However, it won't help if we want to have part of string to be aligned left and other aligned right as OP asked.

Connectez-vous pour commenter.

Réponse acceptée

Chunru
Chunru le 12 Sep 2021
Modifié(e) : Chunru le 12 Sep 2021
figure;
plot(randn(10,1))
t = title({['\fontsize{14}','First line']; ...
' '}, ...
'FontWeight','Normal');
axPos = get(gca, 'Position');
xl =xlim;
%t.Position(1) = xl(2);
text(xl(1), t.Position(2), 'Second Line Left Aligned', ...
'HorizontalAlignment', 'left', 'VerticalAlignment', 'bottom');
text(xl(2), t.Position(2), 'Second Line Right Aligned', ...
'HorizontalAlignment', 'right', 'VerticalAlignment', 'bottom');
set(gca, 'Position',axPos);

Plus de réponses (0)

Produits


Version

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by