Center align multi-line title in latex format

10 views (last 30 days)
Hello, I would like to center align a multi-line title, but in latex format. I am currently using this
title_str1 = sprintf('$\\gamma=%s, k=%d, \\alpha_k=\\epsilon_k=%s=%s$', num2str(gamma), k, ...
func2str(alpha_k_fun), num2str(alpha_k));
title_str2 = sprintf('Trial-%d, $s_k=%d, a_k=%d$(%s)',trial, state_curr, a_k, A_actions{a_k});
title({title_str1, title_str2}, 'Interpreter', 'Latex', 'FontSize', 14); drawnow, hold off;
But, this makes the second line left-aligned. Any suggestions please?

Accepted Answer

Are Mjaavatten
Are Mjaavatten on 21 Apr 2018

Using Latex forces left-alignment of lines in cell array of strings . (This may have been changed in the newest versions of Matlab. I use 2014b.) I think you can get most (or all) the effects you need by using the standard Tex formatting, which will center both lines. Example:

str1 = sprintf('\\gamma = %3.1f',1.4);
str2 = sprintf('s_k=%d, a_k=%d',2,3)
figure;title({str1,str2});
  1 Comment
AA
AA on 21 Apr 2018
Thank you! It solved the purpose! However, LaTex looks a bit neater in terms of mathematical display. For e.g. the symbol 'k' is simply a text symbol now.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!