How to change the plot title and file name when saving it to a for loop
7 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Richard Wood
il 25 Giu 2020
Risposto: the cyclist
il 25 Giu 2020
Hello everyone
I have the following arrays of relevance to the question:
substrates=["MgO" "SiO2" "W"];
substrates_title=["MgO" "SiO$_2$" "W"];
which I want to be introduced in the title of a plot and in the name of the file that encapsulates the aforementioned plot in a for loop. For that, I have written preliminarily the following lines related to this:
t1=title(['Thermal background $T=\,$',num2str(Temperature(i)),' K, ',substrates_title(l),''],'FontSize',14,'interpreter','latex')
...
saveas(gcf,fullfile(outputdir,['Scaling_Based_Temperature_Dependent_Phase_Diagram_Thermal_Background_T=',num2str(Temperature(i)),'_K_with_Joule_Heating_',substrates(l),'_Substrate.pdf']))
but this does not work, exceptly the num2str(Temperature(i)) that works perfectly.
Any suggestion?
0 Commenti
Risposta accettata
the cyclist
il 25 Giu 2020
Part of the problem is that you are mixing character arrays and strings. The following works (after you set your own outputdir):
i = 1;
l = 1;
Temperature(i) = 273.15;
outputdir = 'SET ME TO WHAT YOU WANT!!';
substrates={'MgO' 'SiO2' 'W'};
substrates_title={'MgO' 'SiO$_2$' 'W'};
t1=title(['Thermal background $T=\,$',num2str(Temperature(i)),' K, ',substrates_title{l},''],'FontSize',14,'interpreter','latex')
fname = ['Scaling_Based_Temperature_Dependent_Phase_Diagram_Thermal_Background_T=',num2str(Temperature(i)),'_K_with_Joule_Heating_',substrates{l},'_Substrate.pdf'];
saveas(gcf,fullfile(outputdir,fname));
Note that I used a cell array of character arrays, rather than strings. One could probably have done the opposite.
0 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Title in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!