参数

默认参数格式:

plot_importance(booster, ax=None, height=0.2,xlim=None, ylim=None, title='Feature importance',xlabel='F score', ylabel='Features',importance_type='weight', max_num_features=None,grid=True, show_values=True, **kwargs)

booster : 这里放入训练好的模型。model
ax :设置画布大小的时候用。ax=ax
height :图中柱子的宽度,默认为0.2。height=0.5
xlim : x轴值的范围。xlim =(0,20)最小值为0,最大值为20
ylim : y轴值的范围。ylim =(0,20)最小值为0,最大值为20
title : 标题,默认为"Feature importance"。title=‘特征重要性排序’
xlabel :x轴标签,默认为"F score"。xlabel=‘得分’
ylabel : y轴标签,默认为"Features"。ylabel=‘特征’
importance_type : 重要性的计算方式。importance_type=“weight”(默认,在树中出现的次数/作为划分属性的次数);importance_type= “gain”(使用该特性分割的平均增益/loss平均的降低);importance_type=“cover” (分割的平均覆盖率,其中覆盖率定义为受分割影响的样本数/对样本的覆盖度)
max_num_features :图上显示的最大主要特征数,默认为全部显示。max_num_features=10(画出前10个重要特征)
grid : 设置网格,默认为True。grid=False
show_values :显示特征重要性值,默认为True。show_values = False
kwargs : 发送一个键值对的可变数量的参数列表给函数

设置画布大小可以这样写:

from xgboost import plot_importance
fig,ax = plt.subplots(figsize=(25,15))
plot_importance(model,height=0.5, ax=ax,max_num_features=64)

如果importance_type选择gain或者cover,图片中的数值会非常长,如果想缩短数值的长度方法如下:

方式1—直接变为整数(不建议,可以试一下,画出来就知道了)
找到你xgboost安装包的路径(比如:C:\ProgramData\Anaconda3\Lib\site-packages\xgboost),里面有个py文件plotting.py,在113行左右,有一句ax.text(x + 1, y, x, va=‘center’)改为ax.text(x + 1, y, int(x), va=‘center’),保存后需要restart代码
方式2—保留n位小数(推荐)
找到你xgboost安装包的路径(比如:C:\ProgramData\Anaconda3\Lib\site-packages\xgboost),里面有个py文件plotting.py,修改两个地方:1、在plot_importance参数中增加一个参数r = 4(即保留4位小数,保留几位写几即可)2、在113行左右,有一句ax.text(x + 1, y, x, va=‘center’)改为ax.text(x + 1, y, round(x, r), va=‘center’),保存后需要restart代码
方式3—导出model中的数据自己画图
model.get_booster().get_score(importance_type=‘gain’)

备注:想要改变图形中的任何地方都可以在这个文件(plotting.py)中找到对应的代码进行修改

例如想改变数值与柱子之间的距离,可以修改ax.text(x + 1, y, round(x, r), va=‘center’)里面的x+1,变为x则是0距离,也可以加任意的距离值

plot_importance参数相关推荐

  1. sklearn之XGBModel:XGBModel之feature_importances_、plot_importance的简介、使用方法之详细攻略

    sklearn之XGBModel:XGBModel之feature_importances_.plot_importance的简介.使用方法之详细攻略 目录 feature_importances_ ...

  2. 【机器学习】信用卡欺诈检测|用启发式搜索优化XGBoost超参数

    本文将展示如何使用模拟退火[1]启发式搜索[2]机器学习算法中超参数的最佳组合.这些方法比盲随机生成参数得到的模型效果好.另外,模型效果最好是分别微调每个超参数,因为它们之间通常存在交互. 模拟退火简 ...

  3. LightGBM 重要参数、方法、函数理解及调参思路、网格搜索(附例子)

    文章目录 一.LightGBM 原生接口 重要参数 训练参数 预测方法 绘制特征重要性 分类例子 回归例子 二.LightGBM 的 sklearn 风格接口 LGBMClassifier 基本使用 ...

  4. XGBoost 重要参数、方法、函数理解及调参思路(附例子)

    文章目录 一.xgboost 原生接口 重要参数 训练参数 预测函数 绘制特征重要性 分类例子 回归例子 二.xgboost 的 sklearn 风格接口 XGBClassifier 基本使用 例子 ...

  5. 使用XGboost模块XGBClassifier、plot_importance来做特征重要性排序——修改f1,f2等字段

    如果你还不知道如何使用XGboost模块XGBClassifier.plot_importance来做特征重要性排序,戳这个网址即可. 下面我们讲一个全网都没好好讲的问题:如何修改f1,f2成对应的特 ...

  6. LightGBM参数

    参考:https://www.freesion.com/article/76441004344/#LightGBM__sklearn__329 https://blog.csdn.net/qq_397 ...

  7. XGboost和GBDT区别及解读XGboost参数

    GBDT和XGBoost区别 传统的GBDT以CART树作为基学习器,XGBoost还支持线性分类器,这个时候XGBoost相当于L1和L2正则化的逻辑斯蒂回归(分类)或者线性回归(回归): 传统的G ...

  8. 在Dockerfile中设置G1垃圾回收器参数

    在Dockerfile中设置G1垃圾回收器参数 ENV JAVA_OPTS="\ -server \ -XX:SurvivorRatio=8 \ -XX:+DisableExplicitGC ...

  9. Java Calendar.add()方法的使用,参数含义。指定时间差。

    cal.add()方法中的参数含义: 第一个参数如果是1则代表的是对年份操作,2是对月份操作,3是对星期操作,5是对日期操作,11是对小时操作,12是对分钟操作,13是对秒操作,14是对毫秒操作. 第 ...

最新文章

  1. python math库常用函数_Python math库常用函数
  2. WIN2000 Apache php mysql 安装及安全手册
  3. excel批量转换日期格式,将yyyymmdd类型日期转换成yyyy-mm-dd等日期类型方法
  4. 密码学之hill密码
  5. CH2-1 类型 操作 表达式
  6. pytorch教程龙曲良31-35
  7. Application log debug - storage
  8. 过程计算机控制综合课程设计,自动化10本 12升《计算机控制综合课程设计》任务书...
  9. Hadoop Ecosystem解决方案---数据仓库
  10. java 修改txt_Java实现批量修改txt文件名称的方法示例
  11. java.lang.NoClassDefFoundError: org/jdom/input/SAXBuilder
  12. indesign自学教程,如何保存文档?
  13. (一)、apache doris 介绍
  14. 微信公众平台测试账号本地配置
  15. elementUI之表格排序失效,表格宽度可拖拽变宽变窄
  16. 简单的银行管理系统(接口)
  17. ftp服务器文件复制文件路径,FTP将文件复制到同一FTP的另一个位置
  18. 看雪4-ReeHY-main-2017
  19. Linpack测试简介
  20. 视频显示相关名词解释

热门文章

  1. figlet - 字符画工具
  2. 如果用户希望将自己计算机中的照片,信息技术会考模拟题共31套的选择三
  3. 爆笑谷经典对白(3)
  4. 飞桨论文复现课笔记(论文复现步骤)
  5. VIM的一些自己的使用tips(5年前整理的,看到后热泪盈眶)
  6. 事件捕获、冒泡的工作原理
  7. 计算机的功能及应用,[计算机]测试手机功能及应用
  8. noip初赛复习总纲
  9. Java开发个人实战面试总结
  10. 太赞了!100个案例,Matplotlib 从入门到大神!