Closed
Description
Bug report
Bug summary
Using tex (rcParams["text.usetex"] = True
) results in an error because of a font name not being valid in current master. Works fine with matplotlib 2.2.3.
Code for reproduction
import matplotlib.pyplot as plt
plt.rcParams["text.usetex"] = True
plt.plot([1,2,3])
plt.show()
Actual outcome
File "d:\***\matplotlib\lib\matplotlib\dviread.py", line 736, in __init__
with open(filename, 'rb') as file:
OSError: [Errno 22] Invalid argument: 'D:/Programme/Office/MiKTeX/fonts/tfm/public/cm/cmr10.tfm\r'
I would suspect the \r
simply does not belong at the end of the string.
Complete Traceback
Traceback (most recent call last):
File "d:\***\matplotlib\lib\matplotlib\backends\backend_qt5.py", line 519, in _draw_idle
self.draw()
File "d:\***\matplotlib\lib\matplotlib\backends\backend_agg.py", line 399, in draw
self.figure.draw(self.renderer)
File "d:\***\matplotlib\lib\matplotlib\artist.py", line 34, in draw_wrapper
return draw(artist, renderer, *args, **kwargs)
File "d:\***\matplotlib\lib\matplotlib\figure.py", line 1649, in draw
renderer, self, artists, self.suppressComposite)
File "d:\***\matplotlib\lib\matplotlib\image.py", line 137, in _draw_list_compositing_images
a.draw(renderer)
File "d:\***\matplotlib\lib\matplotlib\artist.py", line 34, in draw_wrapper
return draw(artist, renderer, *args, **kwargs)
File "d:\***\matplotlib\lib\matplotlib\axes\_base.py", line 2623, in draw
mimage._draw_list_compositing_images(renderer, self, artists)
File "d:\***\matplotlib\lib\matplotlib\image.py", line 137, in _draw_list_compositing_images
a.draw(renderer)
File "d:\***\matplotlib\lib\matplotlib\artist.py", line 34, in draw_wrapper
return draw(artist, renderer, *args, **kwargs)
File "d:\***\matplotlib\lib\matplotlib\axis.py", line 1186, in draw
renderer)
File "d:\***\matplotlib\lib\matplotlib\axis.py", line 1124, in _get_tick_bboxes
extent = tick.label1.get_window_extent(renderer)
File "d:\***\matplotlib\lib\matplotlib\text.py", line 902, in get_window_extent
bbox, info, descent = self._get_layout(self._renderer)
File "d:\***\matplotlib\lib\matplotlib\text.py", line 312, in _get_layout
ismath=ismath)
File "d:\***\matplotlib\lib\matplotlib\backends\backend_agg.py", line 206, in get_text_width_height_descent
s, fontsize, renderer=self)
File "d:\***\matplotlib\lib\matplotlib\texmanager.py", line 466, in get_text_width_height_descent
page = next(iter(dvi))
File "d:\***\matplotlib\lib\matplotlib\dviread.py", line 244, in __iter__
while self._read():
File "d:\***\matplotlib\lib\matplotlib\dviread.py", line 302, in _read
self._dtable[byte](self, byte)
File "d:\***\matplotlib\lib\matplotlib\dviread.py", line 162, in wrapper
return method(self, *[f(self, byte-min) for f in get_args])
File "d:\***\matplotlib\lib\matplotlib\dviread.py", line 442, in _fnt_def
self._fnt_def_real(k, c, s, d, a, l)
File "d:\***\matplotlib\lib\matplotlib\dviread.py", line 447, in _fnt_def_real
tfm = _tfmfile(fontname)
File "d:\***\matplotlib\lib\matplotlib\dviread.py", line 1035, in _fontfile
return cls(filename) if filename else None
File "d:\***\matplotlib\lib\matplotlib\dviread.py", line 736, in __init__
with open(filename, 'rb') as file:
OSError: [Errno 22] Invalid argument: 'D:/Programme/Office/MiKTeX/fonts/tfm/public/cm/cmr10.tfm\r'
Expected outcome
No Error.
Matplotlib version
- Operating system: Windows 8.1
- Matplotlib version: master
- Matplotlib backend (
print(matplotlib.get_backend())
): Qt5Agg - Python version: 3.6