How to get clean and high resolution images for figures

366 views (last 30 days)
Ameer Fahmi
Ameer Fahmi on 10 Mar 2020
Answered: DGM on 29 Jul 2021
I always save figures and graphs in form of JPEG, but it seems a bit foggy and its quality is not good enough to submit it for publication, what is the best option to get high quality images for figures and graphs in Matlab?

Accepted Answer

John D'Errico
John D'Errico on 10 Mar 2020
Edited: John D'Errico on 10 Mar 2020
While it is true that a .jpg will not be what you want to achieve, there are better ways to save a file when your target is a high quality result.
I would suggest you do a read here:
where you will see several suggestions offered.

More Answers (2)

Image Analyst
Image Analyst on 10 Mar 2020
I never use jpg if I can help it. PNG is better and pretty much the defacto standard these days. You can use PNG format in imwrite() to save the image in PNG format. Use getimage() or getframe() if you need to get the image with any associated graphics in the overlay.
And check your opengl options to avoid jaggy curves and lines.
Or you can use export_fig.

DGM on 29 Jul 2021
I know everyone already mentioned it, but I feel the need to emphasize it whenever I can. Unless you understand what settings Matlab uses for JPG output, don't ever use it. If you're accustomed to accepting the compromises of the format when saving images in other applications, you're likely expecting way too much from Matlab.
When saving a figure or writing an image using imwrite(), the settings used for JPG output are 75% quality and 4:2:0 chroma subsampling. Even for a JPG, that's complete garbage quality, especially when you're saving the contents of a figure which is all hard edges and high contrast saturated colors.
Part of the reason why I'm compelled to comment about this is becase these parameter settings aren't clearly documented anywhere (at least not the chroma subsampling). That leaves a lot of people completely oblivious to the amount of damage they're doing to their own work.

Community Treasure Hunt

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

Start Hunting!