On 22 March 2014 20:23, Christopher Kuhlman wrote:
> Hello:
>
> I use matplotlib to generate x-y data plots; i.e., 2-D plots. The problem
> is that the output files (the PDF files containing plots that are generated
> with matplotlib) are huge. I can generate files that are 100's of KB or
> even MBs. This seems absurd to me. These file sizes cause programs that
> use them to come to a grinding halt. My goal is to reduce the plot files
> that I produce with matplotlib. Details follow.
>
>
> ----------
>
> I use matplotlib from EPD.
> Enthought Canopy Python 2.7.3 | 64-bit | (default, Aug 8 2013, 05:37:06)
>
> Matplotlib version:
> >>> print matplotlib.__version__
> 1.3.0
>
> OS:
> I'm using Mac OS X Version 10.8.4.
>
> ----------
>
> I use a home-grown code whose starting point was an example code on
> matplotlib website.
>
> My relevant imports are:
>
> import numpy
> import scipy
> import pylab
> import matplotlib.pyplot as plt
> import matplotlib
>
> My plotting code lines are:
>
>
> ## PDF.
> outfile = "basefile" + ".pdf"
> ## pylab.savefig(outfile, bbox_inches=0)
> pylab.savefig(outfile,bbox_inches='tight')
>
>
> ----------
>
> My PDF files contain simple plots which consist of (a) data points only,
> (b) lines between data points (data points not plotted), or (c) both data
> points and lines.
>
> I have a consistent problem in that the files produced have sizes that
> seem way too big.
> For example, most recently, I am plotting 3 data sets; each data set has
> about 90,000 points. If I plot all three sets in one PDF figure, the file
> size is over 2MB.
>
There is no way ever that a human eye (or the computer screen) is going to
distinguish or even see 90,000 points on a standard line-plot. Especially
if you reduce it to a 3 inch by 3 inch graph. You may want to
downscale/interpolate your data to a more manageable set of points and try
again. I'm no expert of the PDF side of things, but I agree with Goyo that
raster files may give you smaller file sizes.
> This seems absurd to me. I used R plotting for many years (again, my own
> homegrown code, for 6 years) and never had this issue, and I was making
> these kinds of plots/figures.
>
> I thought it may be a vector/raster issue, but the following web page says
> that PDF are generated as vector image, which, to my understanding (which
> could be wrong), is the more compact format.
> http://matplotlib.org/faq/usage_faq.html
>
> Is there a command I can use to reduce the file size? Since I am using
> these in reports and publications, the figures are almost always less than
> 3 inches by 3 inches in size; i.e., I do not have issues about taking a
> raster figure and trying to blow it up. So I am not concerned about
> pixelation problems that occur when an image is increased in size.
>
> Thank you very much.
>
> c
>
>
> ------------------------------------------------------------------------------
> Learn Graph Databases - Download FREE O'Reilly Book
> "Graph Databases" is the definitive new guide to graph databases and their
> applications. Written by three acclaimed leaders in the field,
> this first edition is now available. Download your free book today!
> http://p.sf.net/sfu/13534_NeoTech
> _______________________________________________
> Matplotlib-users mailing list
> Matplotlib-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
>
--
Andrea.
"Imagination Is The Only Weapon In The War Against Reality."
http://www.infinity77.net
# ------------------------------------------------------------- #
def ask_mailing_list_support(email):
if mention_platform_and_version() and include_sample_app():
send_message(email)
else:
install_malware()
erase_hard_drives()
# ------------------------------------------------------------- #
------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users