Open
Description
Bug report
Bug summary
Code for reproduction
The same code available in
https://matplotlib.org/2.0.2/examples/pylab_examples/hatch_demo.html
with just two addition: matplotlib.use('Agg')
and plt.savefig
in different formats.
# Paste your code here
"""
Hatching (pattern filled polygons) is supported currently in the PS,
PDF, SVG and Agg backends only.
"""
import matplotlib
matplotlib.use('Agg') #the same happen also without this line backend TkAgg
import matplotlib.pyplot as plt
from matplotlib.patches import Ellipse, Polygon
fig = plt.figure()
ax1 = fig.add_subplot(131)
ax1.bar(range(1, 5), range(1, 5), color='red', edgecolor='black', hatch="/")
ax1.bar(range(1, 5), [6] * 4, bottom=range(1, 5), color='blue', edgecolor='black', hatch='//')
ax1.set_xticks([1.5, 2.5, 3.5, 4.5])
ax2 = fig.add_subplot(132)
bars = ax2.bar(range(1, 5), range(1, 5), color='yellow', ecolor='black') + \
ax2.bar(range(1, 5), [6] * 4, bottom=range(1, 5), color='green', ecolor='black')
ax2.set_xticks([1.5, 2.5, 3.5, 4.5])
patterns = ('-', '+', 'x', '\\', '*', 'o', 'O', '.')
for bar, pattern in zip(bars, patterns):
bar.set_hatch(pattern)
ax3 = fig.add_subplot(133)
ax3.fill([1, 3, 3, 1], [1, 1, 2, 2], fill=False, hatch='\\')
ax3.add_patch(Ellipse((4, 1.5), 4, 0.5, fill=False, hatch='*'))
ax3.add_patch(Polygon([[0, 0], [4, 1.1], [6, 2.5], [2, 1.4]], closed=True, fill=False, hatch='/'))
ax3.set_xlim((0, 6))
ax3.set_ylim((0, 2.5))
#plt.show()
plt.savefig('hatch_demo.pdf')
plt.savefig('hatch_demo.png')
plt.savefig('hatch_demo.eps')
print(matplotlib.__version__)
print(matplotlib.get_backend())
Actual outcome
The pdf saved image does not show all the hatch.
Instead, the png and the eps ones show all the hatch correctly.
Expected outcome
The same shown in
https://matplotlib.org/2.0.2/mpl_examples/pylab_examples/hatch_demo.pdf
Matplotlib version
- Operating system: Ubuntu 18.04 x86_64
- Matplotlib version: v3.0.0 (but the same happen also whit v2.1.1)
- Matplotlib backend (
print(matplotlib.get_backend())
):Agg
(but the same happen also whitTkAgg
) - Python version: Python 3.6.6
- Jupyter version (if applicable):
- Other libraries:
Matplotlib installed with pip