当前位置 主页 > 服务器问题 > Linux/apache问题 >

    Python数据可视化:饼状图的实例讲解

    栏目:Linux/apache问题 时间:2019-12-07 15:59

    使用python实现论文里面的饼状图:

    原图:

    python代码实现:

     # # 饼状图
     # plot.figure(figsize=(8,8))
     labels = [u'Canteen', u'Supermarket', u'Dorm', u'Others']
     sizes = [73, 21, 4, 2]
     colors = ['red', 'yellow', 'blue', 'green']
    
     explode = (0.05, 0, 0, 0)
    
     patches, l_text, p_text = plot.pie(sizes, explode=explode, labels=labels, colors=colors,
              labeldistance=1.1, autopct='%2.0f%%', shadow=False,
              startangle=90, pctdistance=0.6)
    
     # labeldistance,文本的位置离远点有多远,1.1指1.1倍半径的位置
     # autopct,圆里面的文本格式,%3.1f%%表示小数有三位,整数有一位的浮点数
     # shadow,饼是否有阴影
     # startangle,起始角度,0,表示从0开始逆时针转,为第一块。一般选择从90度开始比较好看
     # pctdistance,百分比的text离圆心的距离
     # patches, l_texts, p_texts,为了得到饼图的返回值,p_texts饼图内部文本的,l_texts饼图外label的文本
    
     # 改变文本的大小
     # 方法是把每一个text遍历。调用set_size方法设置它的属性
     for t in l_text:
      t.set_size = 30
     for t in p_text:
      t.set_size = 20
     # 设置x,y轴刻度一致,这样饼图才能是圆的
     plot.axis('equal')
     plot.legend(loc='upper left', bbox_to_anchor=(-0.1, 1))
     # loc: 表示legend的位置,包括'upper right','upper left','lower right','lower left'等
     # bbox_to_anchor: 表示legend距离图形之间的距离,当出现图形与legend重叠时,可使用bbox_to_anchor进行调整legend的位置
     # 由两个参数决定,第一个参数为legend距离左边的距离,第二个参数为距离下面的距离
     plot.grid()
     plot.show()
    

    实现:

    以上这篇Python数据可视化:饼状图的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持IIS7站长之家。