How to join variables in the title of plot?

I am using the matlab lines as follows
title(['PCA scores', method, par]);
where method and par keep on changing for different plots. I want to join 'PCA scores' with method and par in one line. I am attaching the title of plot and request you to kindly suggest me how to join them in one line.
Deva

3 Comments

I have changed it to
title(['PCA scores', num2str(method),num2str(par)]);
however it is giving following error
Error using num2str (line 24)
Input to num2str must be numeric
Deva
What are the data types of method and par?
Devendra
Devendra on 18 Apr 2024
Edited: Devendra on 18 Apr 2024
Method is LR or RF Par is Ratoon or Plant Please suggest me how to print these variables into title of plot in one line?
Thanks for your kind cooperation.
Deva

Sign in to comment.

Answers (2)

title(['PCA scores', num2str(method), num2str(par)]);

8 Comments

Assuming method & par are numeric values that change/take different values
No actually they are names of method and parameters like Method may be LR or RF Par may be ratoon or plant Thanks for your help,
Deva
They are being printed in title as shown in attached figure. But they are not printed in one line. I want to print them in one line.
Deva
If they are not numeric, then you could use string and set the FontSize to 8 (smaller) if the text in method and par variables are long enough .
title([string(PCA scores), string(method), string(par)],'FontSize', 8); %
Thank you very much for your help. It is still not printing in one line.
Deve
I have done little modification as
title(['PCA scores'+ string(method)+string(par)],'fontsize',14);
it worked.
Thanks for your help.
Deva
My rmse error is printed as follows
RMSE = 3.1e+02
I want to print it like
RMSE = 310
Please suggest me how to do it.
Deva

Sign in to comment.

Hi Devendra,
To join 'PCA scores' with variables `method` and `par` in one line for a MATLAB plot title, you can use the `sprintf` function or direct string concatenation. Here are two concise examples:
Using `sprintf`:
title(sprintf('PCA scores %s %s', method, par));
Using String Concatenation (MATLAB R2016b and later):
title(['PCA scores ' method ' ' par]);
Example:
method = 'LR';
par = 'Ratoon';
% 1st method
title(sprintf('PCA scores %s %s', method, par))
%2nd method
title(['PCA scores ' method ' ' par])
Thanks

Categories

Find more on Mathematics and Optimization in Help Center and File Exchange

Products

Release

R2024a

Asked:

on 18 Apr 2024

Commented:

on 18 Apr 2024

Community Treasure Hunt

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

Start Hunting!