There are two different things going on here.
Between 1.2.1 and now, there was a bugfix to the font selection routine
that inadvertently introduced a bug selecting fonts in the usetex
backend. You may notice that on master, the IPA font selected is
different. The file size difference can be attributed to the slightly
larger font size of the one it selected vs. the one it should have.
Note that when usetex is True, the fonts are not subsetted, so you
always get the full font embedded in the file (MEP14 work will fix this
in the future).
See b5c340 for the bug that introduced the commit, and
https://github.com/matplotlib/matplotlib/pull/2260 for the fix (which
should make it into 1.3.0 final).
Between 1.1.1 and 1.2.1 a change was made in how collections are
handled. Previously, each path was redrawn individually. In 1.2, if a
path is reused multiple times, a "stamp" is created and then it is
"used" multiple times. In principle, this generally reduces file sizes
by a large amount. However, in the case of this figure with the 3D
spheres, each path is used only once, so rather than getting the file
size savings of that approach, we only get the overhead. The backend
could be smarter by not doing this when the path is only used a small
number of times. Such a fix would be welcome, but is probably too
large/risky to try to get into the current release cycle. It will have
to wait for 1.3.1
Cheers,
Mike
On 07/30/2013 12:24 PM, Jeffrey Spencer wrote:
K, I have just made the script self-contained but it loads external
data so I have attached that as well. If you want me to just separate
out the plotting commands let me know. I have also attached my
matplotlib rc file which is the same on all three systems. All the
modifications to the matplotlibrc file are copied to the top and in
the first 30 lines or so.
Of note, the smallest file sizes for pdf are using the pgf backend
around 60kb. Not sure if that helps at all. It is also around the same
size if I export to .eps and then convert to pdf. About 60kb. The
problem with eps in these 3d figures though is the back wall I think
has an alpha channel because just becomes a solid wall in the output.
No lines through it like the other two walls.
On Tue, Jul 30, 2013 at 11:23 PM, Jouni K. Seppänen <j...@iki.fi
<mailto:j...@iki.fi>> wrote:
Jeffrey Spencer <jeffspenc...@gmail.com
<mailto:jeffspenc...@gmail.com>> writes:
> I have three different versions of matplotlib that all output
different
> file sizes with matplotlib 1.1.1 providing the smallest. This is
for the
> same exact script. I can post the script if that helps.
>
> MPL 1.4.x: 539.32kb, Ubuntu 12.10
> MPL 1.1.1: 172.56kb Ubuntu 12.10
> MPL 1.2.1: 475.9kb, Ubuntu 13.04
Yes, it would be interesting to know what the plotting commands are.
Just as a guess, since all the sizes are a few hundred kilobytes, it
could be a difference in e.g. font embedding - many TrueType fonts are
of comparable size.
--
Jouni K. Seppänen
http://www.iki.fi/jks
------------------------------------------------------------------------------
Get your SQL database under version control now!
Version control is standard for application code, but databases havent
caught up. So what steps can you take to put your SQL databases under
version control? Why should you start doing it? Read more to find out.
http://pubads.g.doubleclick.net/gampad/clk?id=49501711&iu=/4140/ostg.clktrk
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
<mailto:Matplotlib-users@lists.sourceforge.net>
https://lists.sourceforge.net/lists/listinfo/matplotlib-users
------------------------------------------------------------------------------
Get your SQL database under version control now!
Version control is standard for application code, but databases havent
caught up. So what steps can you take to put your SQL databases under
version control? Why should you start doing it? Read more to find out.
http://pubads.g.doubleclick.net/gampad/clk?id=49501711&iu=/4140/ostg.clktrk
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users
------------------------------------------------------------------------------
Get your SQL database under version control now!
Version control is standard for application code, but databases havent
caught up. So what steps can you take to put your SQL databases under
version control? Why should you start doing it? Read more to find out.
http://pubads.g.doubleclick.net/gampad/clk?id=49501711&iu=/4140/ostg.clktrk
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users