[Matplotlib-users] Font issue while trying to save PS/EPS/SVG but not PDF

2013-05-28 Thread klo uo
As suggested by Phil, I'm reposting github issue #2067 on this list.

I use MPL 1.2.1 on Windows with Python 2.7.5. In my matplotlibrc I've
set sans-serif font to Segoe UI.

Now, if I try to save a plot to PDF, MPL saves it fine, but if I try
PS or EPS or SVG it fails, because of the font set. (If I don't change
the font everything is fine)

Here is PDF info from mutool:

PDF-1.4
Info object (27 0 R):

  /CreationDate (D:20130528120149+02'00')
  /Producer (matplotlib pdf backend)
  /Creator (matplotlib 1.2.1, http://matplotlib.sf.net)


Pages: 1

Retrieving info from pages 1-1...
Mediaboxes (1):
1 ( 10 0 R): [ 0 0 576 432 ]

Fonts (1):
1 ( 10 0 R): Type3 'SegoeUI' (14 0 R)



So I wonder how can MPL output PDF, but can't output PS/EPS, let aside SVG?


And here is full trace from IPython:

KeyError  Traceback (most recent call last)
ipython-input-63-6bec7f50eb05 in module()
 1 savefig('test.eps')

C:\Python27\lib\site-packages\matplotlib\pyplot.pyc in savefig(*args, **kwargs)
470 def savefig(*args, **kwargs):
471 fig = gcf()
-- 472 return fig.savefig(*args, **kwargs)
473
474 @docstring.copy_dedent(Figure.ginput)

C:\Python27\lib\site-packages\matplotlib\figure.pyc in savefig(self,
*args, **kwargs)
   1368 kwargs.setdefault('edgecolor',
rcParams['savefig.edgecolor'])
   1369
- 1370 self.canvas.print_figure(*args, **kwargs)
   1371
   1372 if transparent:

C:\Python27\lib\site-packages\matplotlib\backend_bases.pyc in
print_figure(self, filename, dpi, facecolor, edgecolor, orientation,
format, **kwargs)
   2094 orientation=orientation,
   2095 bbox_inches_restore=_bbox_inches_restore,
- 2096 **kwargs)
   2097 finally:
   2098 if bbox_inches and restore_bbox:

C:\Python27\lib\site-packages\matplotlib\backend_bases.pyc in
print_eps(self, *args, **kwargs)
   1841 from backends.backend_ps import FigureCanvasPS # lazy import
   1842 ps = self.switch_backends(FigureCanvasPS)
- 1843 return ps.print_eps(*args, **kwargs)
   1844
   1845 def print_pdf(self, *args, **kwargs):

C:\Python27\lib\site-packages\matplotlib\backends\backend_ps.pyc in
print_eps(self, outfile, *args, **kwargs)
972
973 def print_eps(self, outfile, *args, **kwargs):
-- 974 return self._print_ps(outfile, 'eps', *args, **kwargs)
975
976

C:\Python27\lib\site-packages\matplotlib\backends\backend_ps.pyc in
_print_ps(self, outfile, format, *args, **kwargs)
   1005 self._print_figure(outfile, format, imagedpi,
facecolor, edgecolor,
   1006orientation, isLandscape, papertype,
- 1007**kwargs)
   1008
   1009 def _print_figure(self, outfile, format, dpi=72,
facecolor='w', edgecolor='w',

C:\Python27\lib\site-packages\matplotlib\backends\backend_ps.pyc in
_print_figure(self, outfile, format, dpi, facecolor, edgecolor,
orientation, isLandscape, papertype, **kwargs)
   1098 bbox_inches_restore=_bbox_inches_restore)
   1099
- 1100 self.figure.draw(renderer)
   1101
   1102 if dryrun: # return immediately if dryrun (tightbbox=True)

C:\Python27\lib\site-packages\matplotlib\artist.pyc in
draw_wrapper(artist, renderer, *args, **kwargs)
 52 def draw_wrapper(artist, renderer, *args, **kwargs):
 53 before(artist, renderer)
--- 54 draw(artist, renderer, *args, **kwargs)
 55 after(artist, renderer)
 56

C:\Python27\lib\site-packages\matplotlib\figure.pyc in draw(self, renderer)
   1004 dsu.sort(key=itemgetter(0))
   1005 for zorder, a, func, args in dsu:
- 1006 func(*args)
   1007
   1008 renderer.close_group('figure')

C:\Python27\lib\site-packages\matplotlib\artist.pyc in
draw_wrapper(artist, renderer, *args, **kwargs)
 52 def draw_wrapper(artist, renderer, *args, **kwargs):
 53 before(artist, renderer)
--- 54 draw(artist, renderer, *args, **kwargs)
 55 after(artist, renderer)
 56

C:\Python27\lib\site-packages\matplotlib\axes.pyc in draw(self,
renderer, inframe)
   2084
   2085 for zorder, a in dsu:
- 2086 a.draw(renderer)
   2087
   2088 renderer.close_group('axes')

C:\Python27\lib\site-packages\matplotlib\artist.pyc in
draw_wrapper(artist, renderer, *args, **kwargs)
 52 def draw_wrapper(artist, renderer, *args, **kwargs):
 53 before(artist, renderer)
--- 54 draw(artist, renderer, *args, **kwargs)
 55 after(artist, renderer)
 56

C:\Python27\lib\site-packages\matplotlib\axis.pyc in draw(self,
renderer, *args, **kwargs)
   1053
  

Re: [Matplotlib-users] Font issue while trying to save PS/EPS/SVG but not PDF

2013-05-28 Thread Michael Droettboom
Which version of Windows are you on? Apparently, the Segoe UI font is 
different on Windows 7 and 8 and I'd like to download and test with the 
correct one.

Mike

On 05/28/2013 06:12 AM, klo uo wrote:
 As suggested by Phil, I'm reposting github issue #2067 on this list.

 I use MPL 1.2.1 on Windows with Python 2.7.5. In my matplotlibrc I've
 set sans-serif font to Segoe UI.

 Now, if I try to save a plot to PDF, MPL saves it fine, but if I try
 PS or EPS or SVG it fails, because of the font set. (If I don't change
 the font everything is fine)

 Here is PDF info from mutool:
 
 PDF-1.4
 Info object (27 0 R):
 
/CreationDate (D:20130528120149+02'00')
/Producer (matplotlib pdf backend)
/Creator (matplotlib 1.2.1, http://matplotlib.sf.net)
 Pages: 1

 Retrieving info from pages 1-1...
 Mediaboxes (1):
  1 ( 10 0 R): [ 0 0 576 432 ]

 Fonts (1):
  1 ( 10 0 R): Type3 'SegoeUI' (14 0 R)
 


 So I wonder how can MPL output PDF, but can't output PS/EPS, let aside SVG?


 And here is full trace from IPython:
 
 KeyError  Traceback (most recent call last)
 ipython-input-63-6bec7f50eb05 in module()
  1 savefig('test.eps')

 C:\Python27\lib\site-packages\matplotlib\pyplot.pyc in savefig(*args, 
 **kwargs)
  470 def savefig(*args, **kwargs):
  471 fig = gcf()
 -- 472 return fig.savefig(*args, **kwargs)
  473
  474 @docstring.copy_dedent(Figure.ginput)

 C:\Python27\lib\site-packages\matplotlib\figure.pyc in savefig(self,
 *args, **kwargs)
 1368 kwargs.setdefault('edgecolor',
 rcParams['savefig.edgecolor'])
 1369
 - 1370 self.canvas.print_figure(*args, **kwargs)
 1371
 1372 if transparent:

 C:\Python27\lib\site-packages\matplotlib\backend_bases.pyc in
 print_figure(self, filename, dpi, facecolor, edgecolor, orientation,
 format, **kwargs)
 2094 orientation=orientation,
 2095 bbox_inches_restore=_bbox_inches_restore,
 - 2096 **kwargs)
 2097 finally:
 2098 if bbox_inches and restore_bbox:

 C:\Python27\lib\site-packages\matplotlib\backend_bases.pyc in
 print_eps(self, *args, **kwargs)
 1841 from backends.backend_ps import FigureCanvasPS # lazy import
 1842 ps = self.switch_backends(FigureCanvasPS)
 - 1843 return ps.print_eps(*args, **kwargs)
 1844
 1845 def print_pdf(self, *args, **kwargs):

 C:\Python27\lib\site-packages\matplotlib\backends\backend_ps.pyc in
 print_eps(self, outfile, *args, **kwargs)
  972
  973 def print_eps(self, outfile, *args, **kwargs):
 -- 974 return self._print_ps(outfile, 'eps', *args, **kwargs)
  975
  976

 C:\Python27\lib\site-packages\matplotlib\backends\backend_ps.pyc in
 _print_ps(self, outfile, format, *args, **kwargs)
 1005 self._print_figure(outfile, format, imagedpi,
 facecolor, edgecolor,
 1006orientation, isLandscape, papertype,
 - 1007**kwargs)
 1008
 1009 def _print_figure(self, outfile, format, dpi=72,
 facecolor='w', edgecolor='w',

 C:\Python27\lib\site-packages\matplotlib\backends\backend_ps.pyc in
 _print_figure(self, outfile, format, dpi, facecolor, edgecolor,
 orientation, isLandscape, papertype, **kwargs)
 1098 bbox_inches_restore=_bbox_inches_restore)
 1099
 - 1100 self.figure.draw(renderer)
 1101
 1102 if dryrun: # return immediately if dryrun (tightbbox=True)

 C:\Python27\lib\site-packages\matplotlib\artist.pyc in
 draw_wrapper(artist, renderer, *args, **kwargs)
   52 def draw_wrapper(artist, renderer, *args, **kwargs):
   53 before(artist, renderer)
 --- 54 draw(artist, renderer, *args, **kwargs)
   55 after(artist, renderer)
   56

 C:\Python27\lib\site-packages\matplotlib\figure.pyc in draw(self, renderer)
 1004 dsu.sort(key=itemgetter(0))
 1005 for zorder, a, func, args in dsu:
 - 1006 func(*args)
 1007
 1008 renderer.close_group('figure')

 C:\Python27\lib\site-packages\matplotlib\artist.pyc in
 draw_wrapper(artist, renderer, *args, **kwargs)
   52 def draw_wrapper(artist, renderer, *args, **kwargs):
   53 before(artist, renderer)
 --- 54 draw(artist, renderer, *args, **kwargs)
   55 after(artist, renderer)
   56

 C:\Python27\lib\site-packages\matplotlib\axes.pyc in draw(self,
 renderer, inframe)
 2084
 2085 for zorder, a in dsu:
 - 2086 a.draw(renderer)
 2087
 2088 renderer.close_group('axes')

 C:\Python27\lib\site-packages\matplotlib\artist.pyc in

Re: [Matplotlib-users] Font issue while trying to save PS/EPS/SVG but not PDF

2013-05-28 Thread klo uo
On Tue, May 28, 2013 at 4:40 PM, Michael Droettboom wrote:
 Which version of Windows are you on? Apparently, the Segoe UI font is
 different on Windows 7 and 8 and I'd like to download and test with the
 correct one.

I'm on Windows XP, but problem was with the name of the font. This
font's name is Segoe UI and if I reference it in matplotlibrc as
SegoeUI (without space), then it works in all above vector formats.
Segoe UI works only in PDF.

--
Try New Relic Now  We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service 
that delivers powerful full stack analytics. Optimize and monitor your
browser, app,  servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users