exportgraphics: adding a margin

167 Ansichten (letzte 30 Tage)
dormant
dormant am 21 Jun. 2021
Beantwortet: dormant am 8 Okt. 2024
Is it possible to add a margin to figures saved using the exportgraphics function?
It crops a tad too tightly for my needs.

Akzeptierte Antwort

David Hasin
David Hasin am 7 Okt. 2024
Bearbeitet: David Hasin am 7 Okt. 2024
Hey there, you can use 'padding' in the exportgraphics option, but it is available only in matlab online 2024a. For example:
exportgraphics(ax,"figurepadding.png","Padding","figure")
or
exportgraphics(ax,"figurepadding.png","Padding",20)
See documentation:

Weitere Antworten (3)

Paul Wintz
Paul Wintz am 15 Sep. 2021
Bearbeitet: Paul Wintz am 18 Nov. 2021
You can force exportgraphics to export the entire figure by drawing an white rectange around it with the command
annotation('rectangle',[0 0 1 1],'Color','w');
To adjust the margins, change the dimensions [0 0 1 1].
As noted by @David Walwark in the comments, the plot will not be interactive while it is annotated. To restore interactivity, delete the annotation after calling exportgraphics.
a = annotation('rectangle',[0 0 1 1],'Color','w');
% -> Save figure here <-
delete(a)
  4 Kommentare
Bill Tubbs
Bill Tubbs am 23 Mär. 2023
Bearbeitet: Bill Tubbs am 23 Mär. 2023
This didn't work for me. Presumably when doing 2 subplots you need to apply this annotation to each subplot?
I tried adjusting the margins to [-0.05 -0.05 1.05 1.05] and it raises:
Error using annotation (line 116)
Position values must be between 0 and 1.
Alexander Moody
Alexander Moody am 28 Aug. 2023
Had the same issue... this worked for me, but I had to change the color of the annotation rectangle to something other than white for it to work.

Melden Sie sich an, um zu kommentieren.


Kiran Felix Robert
Kiran Felix Robert am 24 Jun. 2021
Hi Dormant,
If you are trying to export multiple sub-images/plots onto a single figure, you can explore the tiledlayout to introduce spacing using the 'TileSpacing' Name-Value pair.
  2 Kommentare
Paul Wintz
Paul Wintz am 15 Sep. 2021
This doesn't answer the question. How do we adjust the margins on the outside of a figure saved with exportgraphics?
Bill Tubbs
Bill Tubbs am 23 Mär. 2023
This worked for me. When I did my 2-plot figure using tiledlayout instead of subplots the outer margin was significantly wider.

Melden Sie sich an, um zu kommentieren.


dormant
dormant am 8 Okt. 2024
Many thanks to you all. I gave up on this approach as I needed to specify sizes exactly. So there's a new question here: https://www.mathworks.com/matlabcentral/answers/2158290-specify-plot-box-position-for-tiled-layout?s_tid=srchtitle

Kategorien

Mehr zu Printing and Saving finden Sie in Help Center und File Exchange

Tags

Produkte


Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by