Sizing issues when exporting figures with exportgraphics on MacBook Pro 14" (Sonoma)
17 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I'm having issues exporting figures to a certain size in PDF format.
I'm using a MBP 14" running macOS Sonoma, and MATLAB R2024a, Update 4 with the New Desktop for MATLAB (Beta), but the error is the same in the standard desktop. The fact that MATLAB uses a standard DPI size for macOS of 72 confuses me, but I assume that there is some upscaling going on, since my screen is 3024 x 1964 but MATLAB's ScreenSize property is only 1512x982.
However, when trying to display an image with a width of 20cm, the output figure, as well as the exported PDF is only 8.6cm wide.
width = 20;
height = 7.25;
set(groot, "defaultTextInterpreter", "latex");
set(groot, "defaultLegendInterpreter", "latex");
set(groot, "defaultAxesTickLabelInterpreter", "latex");
set(groot, "defaultFigureUnits", "centimeters");
set(groot, "defaultFigurePosition", [2, 2, width, height]);
set(groot, "defaultAxesFontSize", 11);
set(groot, "defaultLegendFontSize", 11);
set(groot, "defaultLineLineWidth", 1.25);
set(groot, "defaultStemLineWidth", 1.25);
After this, I create a figure with the figure command. To finally save the image, I use:
exportgraphics(fig, path, "ContentType", "vector");
Is this a Bug on macOS on newer machines?
2 comentarios
Bastian Lehnert
el 16 de Sept. de 2024
I have the same issue with my mac. When exporting with an image width of 113 mm the pdf is 60.8 mm.
I checked the properties of the figure and the and Position(3) is 113 mm (also checked the unit).
Bastian Lehnert
el 22 de Nov. de 2024
Movida: Walter Roberson
el 22 de Nov. de 2024
Same issue for me. Font size and everything is correct but the overall plot size is wrong. When running on windows, no issues
Respuestas (2)
Divyanshu
el 5 de Jul. de 2024
Editada: Divyanshu
el 5 de Jul. de 2024
Hi Daniel,
I tried to reproduce the issue with my MAC but was getting the pdf as expected and did not encounter the issue.
However, as a workaround you can try to use either 'print' or 'saveas' function to export figure as a pdf, instead of 'exportgraphics'.
Please refer the following documentation links for more details:
- 'print' - https://www.mathworks.com/help/matlab/ref/print.html#bukyb6e-1-formattype
- 'saveas' - https://www.mathworks.com/help/matlab/ref/saveas.html#buou9ii-formattype
- Comparison between different ways to export graphics from figures - https://www.mathworks.com/help/matlab/creating_plots/compare-ways-to-export-save-graphics-plots-from-figures.html
And for the issue you are facing with 'exportgraphics', I would suggest to reach out to MathWorks Support:
Hope it helps!
1 comentario
Eneru Y
el 4 de En. de 2025
I have the same problem on Windows. No control over size and font in vector mode. The best solution for me is still hgexport(). Perfect vector export, with correct size and font.
0 comentarios
Ver también
Categorías
Más información sobre Printing and Saving 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!