Python数据可视化:饼状图 - Go语言中文社区

Python数据可视化:饼状图


使用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()

实现:
这里写图片描述

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/kevinelstri/article/details/52685772
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-03-08 16:31:03
  • 阅读 ( 925 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢