How can I save my figure to eps AND keep white margins (from my defined figure and axes position)?
6 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I am producing multiple figures which I then need to vertically align in latex. I set my figure and axes position like this:
% Set figure total dimension
set(gcf,'Units','centimeters')
set(gcf,'Position',[0 0 4.5 5.8])
% Set size and position of axes plotting area within figure dimensions. To
% keep vertical axes aligned for multiple figure keep the horizontal
% position consistent
set(gca,'Units','centimeters')
set(gca, 'Position',[1.5 1.3 2.85 4])
Some of my figures have a ylabel and some don't, which thanks to the above set position does not affect the format of the figure. However when I save my figure to eps using
saveas(gcf,'filename','epsc')
the eps file saves it as the tightest fit, ignoring my set positions. How can I get it to save whilst conserving my set formatting?
I've tried saving to .png but the quality is massively reduced (even when using the package export_fig). Is there a simple solution?
I am on MacOs.
0 comentarios
Respuesta aceptada
Jatin
el 23 de Ag. de 2024
If we go through the documentation of “Printing and Exporting” property of figure then we can see that we should use “PaperPosition” and “PaperUnits” as properties rather than “Position” and “Units” for the figure object while printing or exporting.
Updating your code as below should give you the desired results:
% Set figure total dimension
set(gcf,'PaperUnits','centimeters')
set(gcf,'PaperPosition',[0 0 4.5 5.8])
You can also go through the following MATLAB Answer and MathWorks documentation for more information on “Printing and Exporting” property of figure:
Más respuestas (0)
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!