2016-01-12 23 views
6

私はPandasデータフレームを持っており、pngファイルにプロットを保存しようとしています。しかし、何かがうまくいかないように思えます。これは私のコードです:Seaborn Pythonでプロットを保存する方法

import pandas 
import matplotlib.pyplot as plt 
import seaborn as sns 

sns.set(style='ticks') 

df = pandas.read_csv("this_is_my_csv_file.csv") 
plot = sns.distplot(df[['my_column_to_plot']]) 
plot.savefig("myfig.png") 

そして、私はこのエラーを持っている:

AttributeError: 'AxesSubplot' object has no attribute 'savefig' 

答えて

3

あなたの写真が出てくるので、あなたがplt.show()

+0

実際。これは仕事のようです。私は変数の名前で 'plt'ではなくチュートリアルでそれを見たと思った。ありがとう – Tasos

+0

@Tasos彼らは 'fig = plt.Figure()'でFigureオブジェクトを作ったことができます。次に、fig.savefig()で数字を保存することができます – Mathias711

+0

@ Mathias711ああ、はい。意味がある。私は欲しいものをやるためにいくつかのチュートリアルを混ぜて使っていましたが、そのうちの1つはこの方法でした。 – Tasos

0

使用plt.savefig('yourTitle.png')

呼ぶことにしますとき、あなたは plt.savefigを使用することができます

変数を渡す場合:

plt.savefig("yourTitleDataSet{0}.png".format(dataset)) 
10

このような海軍の姿を保存することができます。

と仮定します。給与分布をジェンダーに見せるためにバイオリンプロットを作成する場合このようにして、get_figureメソッドを使用して保存します。

ax = sns.violinplot(x="Gender", y="Salary", hue="Degree", data=job_data) 
#Returns the :class:~matplotlib.figure.Figure instance the artist belongs to 
fig = ax.get_figure() 
fig.savefig('gender_salary.png') 
+0

訂正ありがとうTunaki :) –

関連する問題