Saving figure as a image
22 次查看(过去 30 天)
显示 更早的评论
I am saving my output figures as images. But when I run my matlab script from different computers, the figures look different. As in the labels and legends are different sizes, etc. I want the image outputs to be exactly the same no matter what computer I run it on, I do not want to have computer specific scripts.
I am not a graphics person, so I do not know what causes this. Whether it is the screen resolution, renderer, file type, options or what? I do not know where to start.
The code I am using to save figure is:
output_file = 'example_image.png'
saveas(figure1,fullfile(folderName, output_file));
which outputs the following image:
Help!!
9 个评论
Adam Danz
2021-4-13
From the figure menu, when I select File > SaveAs > PDF the results look quite similar.
采纳的回答
Adam Danz
2021-4-13
Comparing the two png files in one of your previous comments shows an upper y axis in one figure that doesn't exist in the second figure. This is more than a version difference. The only why that would be possible is if the two systems are using different versions of the code or if the system using the older Matlab release is quitting early due to an error.
There is also a difference in fontsize. That can be fixed by explicitly setting the fontsizes in your code. The difference in figure size can be controlled by explicitly setting figure size.
10 个评论
Adam Danz
2021-4-13
Regarding the inconsistent figure sizes, there are many areas to troubleshoot and I've found that exportgraphics does some unexpected things with figure size. For example in this example from the documentation, the printed fig should be "approximately 3 inches" but it's much larger when i try it (r2021a).
The export_fig function on the file exchange will likely work for you:
更多回答(1 个)
David Hill
2021-4-1
You might try figure2pdf in file exchange.
2 个评论
Adam Danz
2021-4-13
meghannmarie's answer moved here as a comment
-----------------------------------------------------------------------------
The figure2pdf function does not work. The pictures still save differently on different machines.
Look at my attachments, one is saved on my laptop and one is saved on our hpc. They are different, but same exact script. I think it is something to do with resolution of screen, but how do I get around it?
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Printing and Saving 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!