Matplotlib:带有阴影的PDF数据分辨率很差

时间:2013-08-05 14:41:02

标签: python pdf matplotlib eps

当使用Matplotlib生成带阴影线的数字时(例如饼图,条形图,气泡图),我在使用PDF图的PDF版本时遇到一些问题。保存为EPS很好,但是一旦我使用epstopdf或MPL的savefig(*.pdf),阴影就会变成像素化并且分散...图像的矢量性质似乎已经丢失。

请参阅下面的最小代码。

from matplotlib import pyplot as plt

# Define hatching styles
hatching = ["/", "o"]

fig, ax = plt.subplots()
wedges, texts = ax.pie([0.4, 0.6], colors=("SteelBlue", "Tomato"))

# Apply the hatching
for j, patch in enumerate(wedges): patch.set_hatch(hatching[j])

fig.savefig("hatchtest.pdf")

我用Gimp放大了一部分情节,以说明差异......

放大EPS数字 Generated with EPS terminal

放大PDF图 Generated with PDF terminal

至于系统特定的细节,我使用的是Ubuntu 13.04,Python 2.7.4和MPL 1.2.1。我尝试了不同的后端,但似乎没有解决这个问题。理想情况下,我想在EPS和PDF中使用漂亮的矢量图像,以便它对日记友好。任何指针都会非常感激。

1 个答案:

答案 0 :(得分:5)

Evince PDF查看器存在问题。在Adobe Reader中查看或打印图表可获得所需的结果。