Pythonを用いてグラフを表示させる際には、Matplotlibライブラリを活用する機会が多いですよね。
Matplotlibを使い慣れていないと上手く処理できないことがあり、例えばグラフを保存させようとしてもうまく保存できず真っ白になる場合などが出てきます。
ここでは、このPython(Matplotlib)のsavefigにてグラフを表示させようとしたものの真っ白になる現象の解決方法について解説していきます。
Python(Matplotlib)のsavefigで保存できない場合の対処方法
それでは、PythonのMatplotlibライブラリのsavefigにてグラフを保存したものの真っ白となり上手く保存できない現象の解決策を紹介します。
以下のようなサンプルコードでsample.csvのデータのグラフを作成し、jpegの画像データとしてsavefig.にて同じディレクトリに保存するとします。
os.chdir(“C:\\sample”)
import matplotlib.pyplot as plt
import pandas as pd
df = pd.read_csv(“sample1.csv”, encoding=”SHIFT_JIS”)
x = df[‘data’].values
y = df[‘capacity’].values
plt.plot(x,y)
plt.savefig(“sample.jpg”)
ただ、このようにしても真っ白になり上手く表示できないケースがあります(.pngでも同じように)。
正直表示されない理由はよくわからないのですが、pngデータとしてもJPGデータとしても、savefigのコードの後にplt.show()と記載することで解決しましたのでここに記載させていただきます。
併せたサンプルコードと無事表示されたグラフは以下の通りです。
os.chdir(“C:\\sample”)
import matplotlib.pyplot as plt
import pandas as pd
df = pd.read_csv(“sample1.csv”, encoding=”SHIFT_JIS”) #csvの読み込み
x = df[‘data’].values
y = df[‘capacity’].values
plt.plot(x,y)
plt.savefig(“sample.jpg”)
plt.show()
表示されたグラフは以下の通りです。
まとめ python(Matplotlib)のグラフ保存時に真っ白となる場合の対処方法
ここでは、pythonのMatplotlibのsavefig機能にてグラフを保存する際に上手く帆zんできない場合の対策について解説しました。
確かにplt.show()などの一度画面上で入れればその後は省略しても大丈夫なコードの場合は記載しないケースが多く、これで保存すると上のように真っ白のグラフとなることがあるようです。
なお、同じコードでもPC環境でできたりできなかったりするので、より丁寧にコードを書くことをおすすめします。
pythonのMatplotlibを使いこなし、業務を効率化させていきましょう。
コメント