如何将xgboost的功能重要性图保存到Jupyter Notebook的文件中

时间:2019-05-15 14:30:26

标签: python jupyter-notebook xgboost

我正在努力将xgboost特征重要性图保存到文件中。我创建了一个模型,并在Jupyter笔记本中标绘了功能的重要性-

xgb_model = xgboost.train(best_params, dtrain, num_round)
xgboost.plot_importance(xgb_model)

它向我显示了功能重要性图,但无法将其保存到文件中。我什至在dir(xgboost.plot_importance(xgb_model))中寻找了任何 save 属性,但一无所获。有什么办法吗?

2 个答案:

答案 0 :(得分:1)

根据docxgboost.plot_importance(xgb_model)返回matplotlib Axes

因此,您可以

ax = xgboost.plot_importance(xgb_model)
ax.figure.savefig('the-path-you-want-to-save.png')

另外,如果您丢失图形的左右边距,则可以设置tight_layout

ax = xgboost.plot_importance(xgb_model)
ax.figure.tight_layout()
ax.figure.savefig('the-path-you-want-to-save.png')

答案 1 :(得分:0)

documentation中,您看到的是matplotlib的输出。因此,您应该可以调用matplotlib的savefig

如果要保存模型,请查看How to save & load xgboost model?