How do you add a header to a printed figure?
18 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Carl Hopkins
el 23 de Mayo de 2017
Respondida: Sean de Wolski
el 14 de Mayo de 2021
Suppose you wanted to write a script to make several pages of figures each with several small subplots that could be used as thumbnails. When done, you would like to print the figures each with a header containing the page number and the number of pages of similar plots. For example:
for page = 1:3
figure (page)
clf
for sub = 1:9
subplot(3,3,sub)
plot(1:100,rand(1,100))
end
set(gcf,'PaperPosition',[.25 .25 8 10])
% add page header here
end
and you want to put a header on the page like this
3 comentarios
Adam Danz
el 14 de Mayo de 2021
If you're using tiledlaytout (Matlab R2019b and later), you can assign the title to the tiledlayout object.
figure
tlo = tiledlayout(3,3);
nexttile; nexttile; nexttile;
nexttile; nexttile; nexttile;
nexttile; nexttile; nexttile;
title(tlo, 'Global Title', 'FontWeight','Bold','FontSize',18)
Respuesta aceptada
Más respuestas (3)
Jan
el 23 de Mayo de 2017
Add a text to an invisible axes covering the complete figure:
AxesH = axes('Units', 'Normalized', 'Position', [0,0,1,1], 'Visisble', 'off', ...
'NextPlot', 'add');
text(0.5, 0.99, 'Your figure title', 'Parent', AxesH, ...
'Units', 'normalized', ...
'VerticalAlignment', 'top', 'HorizontalAlignment', 'center');
1 comentario
Sean de Wolski
el 14 de Mayo de 2021
You can use the MATLAB Report Generator to build sophisticated reports with whatever formatting, chapters, sections, etc. you need. A trivial example:
import mlreportgen.report.*
import mlreportgen.dom.*
r = Report('figs', 'pdf');
t = Text("Figures:");
t.Style = {Bold, FontSize('24pt')};
add(r, t);
for ii = 1:3
plot(sin(1:(2^(ii+1))))
add(r, Figure);
end
close(r)
% rptview(r)
0 comentarios
Ver también
Categorías
Más información sobre Graphics Object Properties en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!