6

matplotlib では、複数の拡張子を持つ図を保存する (特に巧妙な) 方法はありますか?

ユースケース: 私は通常、クイックルック検査、Web へのアップロードなどのために .png ファイルが必要です。しかし、出版品質の図については、.pdf ファイルまたは .eps ファイルが必要です。多くの場合、3つすべてが必要です。

難しいことではありません:

for suffix in 'png eps pdf'.split():
    pl.savefig(figname+"."+suffix)

しかし、それには多くのコードの書き換えが必要です (私は通常savefig(figname+'.png')、今どこにでもあるだけなので)、これは便利なラッパー関数の簡単なケースのように思えます。

4

2 に答える 2

3

を使用して、savefig のドキュメントに示されているように、ファイル タイプを指定できますformat。しかし、私が知る限り、指定できる形式は 1 つだけです。

特に賢いわけではありませんが、コードの書き換えを最小限に抑えるには、save_fig関数を作成する必要があります。これにより、適切なファイル名と品質が自動的に作成されます。

def save_fig(fig_name, quality="quick-look"):
    if "quick-look" in quality:
         # save fig with .png etc
    if "pub-qual" in quality:
         # save fig with increased dpi etc etc. 

すべてのsavefigを書き直す必要があるため、おそらくあなたが探している答えではありませんが、この種のことは全体的に繰り返されるコードの量を減らすのに役立つと思います.

于 2013-06-24T16:10:02.567 に答える