大家好,我一直在尝试使用 plt.savefig("coeff.png")
将我的输出图表保存为 svg 或 png,但我得到的只是一个空白图片。
无论如何我可以将我的绘图导出为图片格式吗?
下面是我的代码。
# These are the (standardized) coefficients found
# when it refit using that best alpha
list(zip(X.columns, LGBMR.feature_importances_))
#Now let's make it more presentable in Pandas DataFrame and also in standard form for numbers
df_LGBM_model_coefficients = pd.DataFrame(list(zip(X_train.columns, LGBMR.feature_importances_)))
df_LGBM_model_coefficients.rename(columns={0:'Features', 1: 'Coefficients'}, inplace=True)
df_LGBM_model_coefficients = df_LGBM_model_coefficients.iloc[1:]
df_LGBM_model_coefficients = df_LGBM_model_coefficients.sort_values(by = 'Coefficients', ascending = False)
#only retain the important ones.
df_LGBM_model_coefficients_top_10 = df_LGBM_model_coefficients.head(10)
plt.figure(figsize=(12,12))
sns.set_style('whitegrid')
sns.set(font_scale=0.8)
ax = sns.barplot(x = 'Coefficients',y='Features', data = df_LGBM_model_coefficients_top_10)
ax.set_title("LGBMR Top 10 Features and their coefficients")
for p in ax.patches:
ax.annotate("%.1f" % p.get_width(), (p.get_x() + p.get_width(), p.get_y() + 0.8), xytext=(5, 10), textcoords='offset pixels')
plt.show()
plt.savefig("coeff.png")
最佳答案
交换代码的最后两行。将 plt.savefig("coeff.png")
行放在 plt.show()
行之前。
plt.savefig("coeff.png")
plt.show()
https://stackoverflow.com/questions/65896805/