美文网首页
贡献度分析(帕累托图)

贡献度分析(帕累托图)

作者: stagger_xu | 来源:发表于2018-12-13 17:11 被阅读0次

    帕累托法则 :又称20/80法则,同样的投入放在不同的地方会产生不同的效益。
    比如一个公司80%的利润常常来自于20%的产品。
    使用贡献度分析来分析获利最高的80%的产品。

    from __future__ import print_function
    import pandas as pd
    
    dish_profit ='C:/Users/Administrator/Desktop/works/chapter3/demo/data/catering_dish_profit.xls'
    data = pd.read_excel(dish_profit,index_col = u'菜品名')
    data = data[u'盈利'].copy()
    data.sort_values(ascending = False)
    
    
    import matplotlib.pyplot as plt
    plt.rcParams['font.sans-serif'] = ['SimHei']#用来正常显示中文标签
    plt.rcParams['axes.unicode_minus'] = False #用来正常显示正负号
    
    plt.figure()#创建一个图形实例,传入图形实例的参数。这个图形实例会和pylab接口相关联
    data.plot(kind = 'bar')
    plt.ylabel(u'盈利(元)')
    p = 1.0*data.cumsum()/data.sum()
    p.plot(color = 'r',secondary_y = True,style = '-o',linewidth = 2)
    
    plt.annotate(format(p[6], '.2%'),xy = (6,p[6]),xytext = (6*0.9,p[6]*0.9),arrowprops = dict(arrowstyle = "->",connectionstyle = "arc3,rad=.2"))
    plt.ylabel(u'盈利(比例)')  
    
    下载.png

    一点tips:

    plt.annotate()

    为图表添加注释。

    添加注释
    第一个参数是注释的内容
    xy设置箭头尖的坐标(传入一个元组)
    xytext设置注释内容显示的起始位置(传入一个元组)
    arrowprops 用来设置箭头

    facecolor 设置箭头的颜色
    headlength 箭头的头的长度
    headwidth 箭头的宽度
    width 箭身的宽度

    plt.annotate(format(p[6], '.2%'),xy = (6,p[6]),xytext = (6*0.9,p[6]*0.9),arrowprops = dict(arrowstyle = "->",connectionstyle = "arc3,rad=.2"))

    更加具体的参数见这里

    相关文章

      网友评论

          本文标题:贡献度分析(帕累托图)

          本文链接:https://www.haomeiwen.com/subject/shavhqtx.html