|
From: Michael D. <md...@st...> - 2012-10-30 17:52:48
|
On 10/30/2012 12:25 PM, Brandon Heller wrote: > Hi Phil, > > Next time I'll be more explicit. I added the question to SA after I > tried to get a public link to my message and saw that archives past > July of this year seem to be missing. It wasn't clear that this list > was even still alive: > http://sourceforge.net/mailarchive/forum.php?forum_name=matplotlib-users > > Any idea why the archives seem to have stopped? Thanks for pointing that out. I'm not sure what's wrong, but I'll look into it. Mike > > Thanks, > Brandon > > On Tue, Oct 30, 2012 at 2:23 AM, Phil Elson <pel...@gm... > <mailto:pel...@gm...>> wrote: > > Hi Brandon, > > I notice that this is cross-posted on StackOverflow > (http://stackoverflow.com/questions/13132194/type-1-fonts-with-log-graphs). > Personally, I have no problem with cross posting, but to save two > people having to answer the same question, I would make sure it > was explicit that this had also been posted elsewhere. > > Thanks, > > Phil > > > On 30 October 2012 03:13, Brandon Heller <bra...@st... > <mailto:bra...@st...>> wrote: > > Hi, > > I'm trying to use Matplotlib graphs as part of a camera-ready > submission, and the publishing house requires the use of Type > 1 fonts > only. > > I'm finding that the PDF backend happily outputs Type-1 fonts for > simple graphs with linear Y axes, but outputs Type-3 fonts for > logarithmic Y axes. > > Using a logarithmic yscale incurs the use of mathtext, which > seems to > use Type 3 fonts, presumably because of the default use of > exponential > notation. I can use an ugly hack to get around this - using > pyplot.yticks() to force the axis ticks to not use exponents - but > this would require moving the plot region to accommodate large > labels > (like 10 ^ 6) or writing the axes as 10, 100, 1K, etc. so they > fit. > > There's a minimum working example below, which I've tested > with the > matplotlib master branch as of today, as well as 1.1.1, which > produces > the same behavior, so I don't know that this is a bug, > probably just > unexpected behavior. > > > #!/usr/bin/env python > # Simple program to test for type 1 fonts. > # Generate a line graph w/linear and log Y axes. > > from matplotlib import rc, rcParams > > #rc('font',**{'family':'sans-serif','sans-serif':['Helvetica']}) > > # These lines are needed to get type-1 results: > # > http://nerdjusttyped.blogspot.com/2010/07/type-1-fonts-and-matplotlib-figures.html > rcParams['ps.useafm'] = True > rcParams['pdf.use14corefonts'] = True > rcParams['text.usetex'] = False > > import matplotlib.pyplot as plt > > YSCALES = ['linear', 'log'] > > def plot(filename, yscale): > plt.figure(1) > xvals = range(1, 2) > yvals = xvals > plt.plot(xvals, yvals) > plt.yscale(yscale) > #YTICKS = [1, 10] > #plt.yticks(YTICKS, YTICKS) # locs, labels > ax = plt.gca() > #print ax.get_xticklabels()[0].get_text() > print ",".join([a.get_label() for a in ax.get_yticklabels()]) > plt.savefig(filename + '.pdf') > > > if __name__ == '__main__': > for yscale in YSCALES: > plot('linegraph-' + yscale, yscale) > > > > Does anyone know a clean way to get Type 1 fonts with log axes? > > Thanks, > Brandon > > ------------------------------------------------------------------------------ > Everyone hates slow websites. So do we. > Make your web apps faster with AppDynamics > Download AppDynamics Lite for free today: > http://p.sf.net/sfu/appdyn_sfd2d_oct > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > <mailto:Mat...@li...> > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > > > > > > ------------------------------------------------------------------------------ > Everyone hates slow websites. So do we. > Make your web apps faster with AppDynamics > Download AppDynamics Lite for free today: > http://p.sf.net/sfu/appdyn_sfd2d_oct > > > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users |