3

Matplotlib を使用してハッチング付きの図 (円グラフ、棒グラフ、バブル チャートなど) を生成する場合、図の PDF バージョンから適切な解像度を取得するのに問題があります。epstopdfEPS として保存することは問題ありませんが、または 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図の拡大 EPS端末で生成

PDF図を拡大 PDF端末で生成

システム固有の詳細については、MPL 1.2.1 で Ubuntu 13.04、Python 2.7.4 を使用しています。さまざまなバックエンドを試しましたが、これを解決するものは何もないようです。EPS と PDF できれいなベクター画像を作成して、ジャーナルに適したものにしたいと考えています。どんなポインタでも大歓迎です。

4

1 に答える 1

5

Evince PDF ビューアーの問題です。Adobe Reader で表示するか、プロットを印刷すると、目的の結果が得られます。

于 2013-08-05T14:55:41.450 に答える