简介

基尼系数是根据洛伦兹曲线定义的判断收入分配公平程度的指标,0.4为收入分配警戒线。

基尼系数越小,年收入分配越平均。


AAA、BBB为图形面积,则基尼系数GGG定义为:
G=AA+BG=\frac{A}{A+B}G=A+BA​

具体案例

数据来源看准网的北京搜狗的2019-06-15数据,过滤掉员工数小于2的数据,计算得到基尼系数为0.28

import numpy as np
from matplotlib import pyplot as plt
from scipy.interpolate import make_interp_splinedef GiniIndex(p):'''基尼系数'''cum = np.cumsum(sorted(np.append(p, 0)))sum = cum[-1]x = np.array(range(len(cum))) / len(p)y = cum / sumB = np.trapz(y, x=x)A = 0.5 - BG = A / (A + B)'''绘图'''plt.rcParams['font.sans-serif'] = ['SimHei']fig, ax = plt.subplots()ax.spines['right'].set_color('none')ax.spines['top'].set_color('none')ax.spines['bottom'].set_position(('data', -0))ax.spines['left'].set_position(('data', 0))plt.xticks([0, 1.0])plt.yticks([1.0])plt.axis('scaled')x_smooth = np.linspace(x.min(), x.max(), 100)y_smooth = make_interp_spline(x, y)(x_smooth)ax.plot(x_smooth, y_smooth, color='black')ax.plot(x, x, color='black')ax.plot([0, 1, 1, 1], [0, 0, 0, 1], color='black')ax.fill_between(x, y)ax.fill_between(x, x, y, where=y <= x)ax.set_xlabel('职位')ax.set_ylabel('工资')plt.show()return Gif __name__ == '__main__':salary = {'算法研究员': 42100,'产品经理': 31600,'c++软件工程师': 38900,'java开发工程师': 32650,'测试开发': 33700,'数据开发': 31600,'android开发工程师': 26850,'自然语言处理': 47300,'web前端开发工程师': 31600,'测试工程师': 11600,'运维开发工程师': 31600,'产品总监': 57800,'数据分析师': 30000,'深度学习': 42100,'语音识别': 38900,'javascript': 32600,'移动产品经理': 31600,'数据产品经理': 31600,'ios开发工程师': 31600,'产品助理': 2200,'机器学习': 63050,'python': 18450,'图像算法': 52550,'c#': 31600,'node.js': 23700,'内容运营': 4300,'数据挖掘工程师': 23700,'产品运营': 5300,'视觉设计师': 24250,'算法工程师': 49950,'ui设计师': 25800,'英语翻译': 3200,'编辑': 3200, }print(GiniIndex(list(salary.values())))  # 0.27963407313931665

参考文献

  1. 基尼系数 - 维基百科
  2. 【北京北京搜狗科技发展有限公司待遇怎么样】- 看准网
  3. 基尼系数如何计算? - 知乎
  4. matplotlib.pyplot.fill

Python绘制基尼系数图相关推荐

  1. python简单代码画曲线图教程-Python绘制折线图和散点图的详细方法介绍(代码示例)...

    本篇文章给大家带来的内容是关于Python绘制折线图和散点图的详细方法介绍(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 1.绘制折线图和散点图要用到matplotlib ...

  2. python画折线图代码-Python绘制折线图和散点图的详细方法介绍(代码示例)

    本篇文章给大家带来的内容是关于Python绘制折线图和散点图的详细方法介绍(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 1.绘制折线图和散点图要用到matplotlib ...

  3. python话雷达图-PYTHON绘制雷达图代码实例

    这篇文章主要介绍了PYTHON绘制雷达图代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.雷达图 import matplotlib.py ...

  4. python绘制雷达图代码实例-PYTHON绘制雷达图代码实例

    这篇文章主要介绍了PYTHON绘制雷达图代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.雷达图 import matplotlib.py ...

  5. python画出的雷达图效果-PYTHON绘制雷达图代码实例

    这篇文章主要介绍了PYTHON绘制雷达图代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.雷达图 import matplotlib.py ...

  6. python turtle画彩虹-python绘制彩虹图

    本文实例为大家分享了python绘制彩虹图的具体代码,供大家参考,具体内容如下 from turtle import * #控制彩虹路径 def path(pen, r, g, b): pen.pen ...

  7. python画图代码彩虹-python绘制彩虹图

    本文实例为大家分享了python绘制彩虹图的具体代码,供大家参考,具体内容如下 from turtle import * #控制彩虹路径 def path(pen, r, g, b): pen.pen ...

  8. python 绘制折线图-怎样用python绘制折线图

    今天教大家用python绘制一些线性图案,需要的朋友可以借鉴参考一下. 画最简单的直线图 代码如下:import numpy as np import matplotlib.pyplot as plt ...

  9. 利用python绘制雪景图_python绘制雪景图

    本文实例为大家分享了python绘制雪景图的具体代码,供大家参考,具体内容如下 绘制雪景图,应用到turtle和random. from turtle import * from random imp ...

最新文章

  1. Python 元组的使用
  2. 【转】jQuery获取Select option 选择的Text和Value
  3. HAproxy指南之haproxy编译安装(安装篇)
  4. pytorch定义神经卷积网络CNN源码
  5. 使用Python批量处理行、列和单元格
  6. linux页表,arm linux 页表(转)
  7. 201671010435-王潇-实验四附加实验-项目互评
  8. PID控制器改进笔记之六:改进PID控制器之参数设定
  9. 双鉴探测器是哪两种探测方式结合_双鉴探测器的原理及应用
  10. tomcat java垃圾回收_tomcat启动参数配置,内存和垃圾回收
  11. 如何查看jsplumb.js的API文档(YUIdoc的基本使用)#华为云·寻找黑马程序员#
  12. 网络通信误码率测试软件,微机在通信线路误码率测试中的应用
  13. codevs1197 Vigenère密码
  14. 精选| 2017年12月R新包推荐
  15. 总结之lowagie.text合并PDF文件
  16. cad填充图案乱理石_CAD填充图案文件在哪个文件夹里?
  17. 使用计算机VLOOKUP函数需注意什么,lookup和vlookup的区别 计算机Excel中的lo...
  18. 科技「垦荒」,AI护虎
  19. Python-玩转数据-利用百度高德经纬度地图定位
  20. React Native 布局实现测试

热门文章

  1. 如何把视频文件在线压缩变小?
  2. 实验7:自定义类模拟三维向量及其运算
  3. java的locate用法,locate: command not found
  4. 教你用最新工具反编译android apk
  5. MySQL中几种常见的函数及具体操作
  6. 为什么玩家都对光线追踪爱不释手?
  7. 基于触摸屏的 输入系统应用分析
  8. Linux驱动-LCD驱动
  9. Bootstrap 颜色
  10. nuxt项目发布服务器步骤(使用pm2管理)