Does anybody know how to (in a plot) put the ‘title’ as the name of the file where the X,Y,Z variables are included? the idea is to generate several and independent plots, based on ‘imagesc’, ‘contolchart’ and other plotting functions. Thanks.

4 commentaires

Rik
Rik le 15 Avr 2021
If you have the file name available as a char or string, you can use it in the title function call. Otherwise I don't know what you would mean.
Fercho_Sala
Fercho_Sala le 15 Avr 2021
for the case you upload a data file and need to title the chart as the original name of the file found in some specific folder i.e C:\Users\Mat\Desktop\matrix_A.dat , obviously without the '.dat' extencion.
John Ostrander
John Ostrander le 24 Mar 2022
@Rik I am looking for something similar. There is a python code for it (I am learning both and very much a newbie) but in my case and I suspect the qeustion is the same:
C:\path\morepath\.......\filename.csv some of my files are buried deep in the file structure.
Strip "filename" from this automatically and insert it as the graph title.
I work with many files, and many graphs look alike. This would save time.
The fileparts function should do what you need:
[p,f,e]=fileparts('C:\path\morepath\filename.csv')
p = 0×0 empty char array
f = 'C:\path\morepath\filename'
e = '.csv'
%(these results are on Linux, on Windows you should get this)
p = 'C:\path\morepath'
f = 'filename'
e = '.csv'

Connectez-vous pour commenter.

 Réponse acceptée

Perhaps you want to add values to the titles of your figures, try something like this
for k=1:9
subplot(3,3,k)
title(strcat('Subplot number =',num2str(k)))
end
If this does not answer your question, we would need more information.

1 commentaire

or,
title(['Subplot number = ', num2str(k)])
or,
title(sprintf('Subplot number = %d', k))

Connectez-vous pour commenter.

Plus de réponses (1)

Chunru
Chunru le 15 Avr 2021

0 votes

filename = "abc";
load(filename, "x", "y");
plot(x, y)
title(sprintf("File name: %s", filename));

1 commentaire

You shouldn't encourage loading variables like this. Always load to a struct:
S=load(filename, "x", "y");x=S.x;y=S.y;

Connectez-vous pour commenter.

Produits

Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by