Interesting development of the issue described below, shared with the list for legacy purposes.
As it turns out, which PDF viewer one uses does matter when it comes to printing (on paper) matplotlib figures containing 'imshow' plots and saved as .pdf. The problem I had was the result of printing the matplotlib figure via Mac OSX's "Preview". If I print the same figure via Acrobat Reader, then the grid in both panel look identical, the panel edges are sharp and crisp, etc ... This most certainly points out towards a difference deep inside Preview and Acrobat - haven't tried other PDF viewers. For reference, I am on Mac OS 10.6, used Preview 5.0.3 and Acrobat reader 10.1.12. Cheers, Fréd On 23/10/2014, at 10:07 PM, Frédéric Vogt wrote: > Hi everyone, > > Using 'imshow' to plot a few arrays (arranged with gridspec) that I then > export directly to a .pdf file using savefig, I noticed that when I print the > .pdf file (i.e. on real paper) some of the subplots are blurry. > > To clarify: > - in all my figures, there is always 1 subplot very sharp and crisp, and all > the others are slightly blurry, > - the effect is not visible on the screen at any zoom level, > - the effect is very slight, and hardly noticeable ... until you plot a fine > dotted grid - and then, it becomes evident (the grid points pop out a LOT > more in the sharp plot), > - the entire 'sub-image' is blurred (axes, on-image text, grids, etc...) but > the axis labels and tick labels are fine. > > This effect is hard to describe, so I placed an example here: > http://www.mso.anu.edu.au/~fvogt/mpl_tmp/ > You can compare the original pdf (straight out of Python) and the > 'scanned-printed' version. The scan is not of the highest quality, but you > can definitely see that the grid on the left is fainter - and if you zoom in, > the figure's edges are also less sharp. > > I tried (and failed) to find info on the web so far (I'm still searching). In > the meantime, has anyone seen this effect before ? Is this a documented > bug/feature ? > > I suspect that it may be related to how subplots (containing distinct images) > are exported to .pdf, but it is a long way beyond my current knowledge of the > savefig function. Note that playing with the dpi setting (I went up to 1200) > doesn't help (I can see the improvement on the images themselves but the > print blurriness remains). And just in case you wonder, the print bluriness > also remains whether I print the .pdf straight out of Python or include it > inside a Latex document first. > > Any ideas on how to fix/go around this ? > > Cheers, > Fréd > > P.S.: The effect is not present if I export my figures in png. But for > quality purposes, I'd much rather try to avoid going through png if I can ... > > ------------------------------------------------------------------------------ > _______________________________________________ > Matplotlib-users mailing list > Matplotlib-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/matplotlib-users
------------------------------------------------------------------------------
_______________________________________________ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users