Group Abstract Group Abstract

Message Boards Message Boards

Saving Hi-Res EPS / TIFF images - No more memory available

GROUPS:

I need to save some plots in EPS and TIFF files with 900-1200 dpi. I am trying the usual Export function. With EPS, it always saves in very low resolution, no matter the ImageResolution I set (I think EPS is not compatible with ImageResolution, but I still need to save the file with specified dpi in EPS format and don't know how). With TIFF , for 900 dpi, Mathematica takes several seconds and then aborts and warns "No more memory available. Mathematica kernel has shut down. Try quitting other applications and then retry." With lower dpi, TIFF works, but produces gigantic files (e.g., 85 GB for 500 dpi), so the questions would be why is it producing so ridiculously huge files and how to avoid it. I have 3 GB in RAM.

The images I'm trying to save are more complicated, so it runs out of memory faster, but the next examples are much more easier to read and the behaviour is the same.

Examples with EPS (both of them produce a 94 kb file):

Export["Example1.eps", 
Plot[{x^2, 1 - x, 3 x, (x - 1)^1.5, -x, E^x, Log[x]}, {x, -5, 5}],
ImageResolution -> 100]

Export["Example2.eps",
Plot[{x^2, 1 - x, 3 x, (x - 1)^1.5, -x, E^x, Log[x]}, {x, -5, 5}],
ImageResolution -> 1000]

Examples with TIFF (the first one produces a 45 MB file, the second one runs out of memory):

Export["Example3.tiff", 
Plot[{x^2, 1 - x, 3 x, (x - 1)^1.5, -x, E^x, Log[x]}, {x, -5, 5}],
ImageResolution -> 1000]

Export["Example4.tiff",
Plot[{x^2, 1 - x, 3 x, (x - 1)^1.5, -x, E^x, Log[x]}, {x, -5, 5}],
ImageResolution -> 2000]

Thanks in advance

POSTED BY: Daniel Solis
Answer
6 months ago

Please provide an example, it sounds like PlotName is already rasterized.

POSTED BY: Alexey Popkov
Answer
6 months ago

I updated the question. It now has simple specific examples.

POSTED BY: Daniel Solis
Answer
6 months ago

Your ImageResolution -> 2000 case works fine on my computer (OS X with 16 GB of RAM) and produces a 185 Meg file.

POSTED BY: David Reiss
Answer
6 months ago

I have 3GB. I understand then that I arrived to a dead end with Tiff files :(

POSTED BY: Daniel Solis
Answer
6 months ago

I still need to save the file with specified dpi in EPS format and don't know how

You should realize that EPS is a resolution-independent vector graphics format, specifying dpi for EPS in general has no sense!

POSTED BY: Alexey Popkov
Answer
6 months ago

I see, but if it is a vector graphic format, why the saved file has horrible definition? It looks blurred.

Also, the journal I need the images for asks for an "EPS file with 900 - 1200 dpi", how do I fullfil its expectations?

POSTED BY: Daniel Solis
Answer
6 months ago

The EPS files produced with the code in the question looks quite good when converted to PDF and rendered by Adobe Acrobat. They are not blurred in any way, but depending on the settings of the renderer antialiasing may be applied. Here is a screenshot of the first plot in Adobe Acrobat:

screenshot

As to the journal requirement, I am sure they mean that IF a EPS file contains embedded raster image THEN this image should be 900 - 1200 dpi. If the file does not contain embedded raster images, this requirement is just fulfilled by default.

POSTED BY: Alexey Popkov
Answer
6 months ago

Thanks for your time. I have a clearer view.

I have no idea why eps keeps looking blurred in my computer (even if I change the output file to pdf). I shall try in another computer.

By now, I found that I can save the image in 500 dpi tiff file and later change it to 900 dpi by reducing the print area while keeping the pixels resolution.

POSTED BY: Daniel Solis
Answer
6 months ago

I recommend you to use EPS format for export since your plots are perfectly compatible with this format. It is surprising that your PDF renderer makes them blurry, what PDF viewer do you use?

POSTED BY: Alexey Popkov
Answer
6 months ago