размер фигуры важности графика xgboost

#python #matplotlib #scikit-learn #xgboost

#python #matplotlib #scikit-learn #xgboost

Вопрос:

Как я могу изменить размер фигуры функции важности графика xgboost?

Попытка передать значение figsize=(10,20) завершается неудачей, за исключением неизвестного атрибута.

Комментарии:

1. В итоге я создал свой собственный на основе github.com/ViennaKaggle/allstate-claims-severity/blob/master /…

Ответ №1:

Вы можете передать ось в ax аргументе в plot_importance() . Например, используйте эту оболочку:

 def my_plot_importance(booster, figsize, **kwargs): 
    from matplotlib import pyplot as plt
    from xgboost import plot_importance
    fig, ax = plt.subplots(1,1,figsize=figsize)
    return plot_importance(booster=booster, ax=ax, **kwargs)
 

Затем используйте my_plot_importance() вместо plot_importance()

Ответ №2:

Вы также можете задать размер фигуры с помощью:

 from xgboost import plot_importance
import matplotlib.pyplot as plt

plt.rcParams["figure.figsize"] = (14, 7)
plot_importance(booster=booster)
 

Ответ №3:

Добавляйте только plt.rcParams["figure.figsize"] = (20,50) в свой код

Например:

 from xgboost import plot_importance
plt.figure(figsize=(40,20))
plot_importance(model,max_num_features=100)
plt.rcParams["figure.figsize"] = (20,100)
plt.show()
 

Отрегулируйте (20,100), чтобы увеличить или уменьшить размер изображения