精华内容
下载资源
问答
  • python画饼状图
    2021-07-26 17:14:43
    import numpy as np
    import matplotlib as mpl
    import matplotlib.pyplot as plt
    
    myfont=mpl.font_manager.FontProperties(fname='C:\Windows\Fonts\simsun.ttc', size=20) #标签字体
    mpl.rcParams.update({'font.size': 10}) # 改变刻度所有字体大小,改变其他性质类似
    
    #画饼状图
    def plopie(labels, colors, sizes, explode):
    	plt.figure(figsize=(10,10)) #调节图形大小,宽,高。通过改变图形大小,可改变文本与图之间的间距
    	patches,l_text,p_text = plt.pie(sizes,explode=explode, labels=labels, colors=colors, labeldistance=0.5, autopct='%3.1f%%', shadow=False, startangle=90, pctdistance=0.6)
    		#patches, l_texts, p_texts,为了得到饼图的返回值,p_texts饼图内部文本的,l_texts饼图外label的文本
    		#labeldistance,文本的位置离远点有多远,1.1指1.1倍半径的位置
    		#autopct,圆里面的文本格式,%3.1f%%表示小数有三位,整数有一位的浮点数
    		#shadow,饼是否有阴影
    		#startangle,起始角度,0,表示从0开始逆时针转,为第一块。一般选择从90度开始比较好看
    		#pctdistance,百分比的text离圆心的距离
    	for font in l_text: font.set_fontproperties(myfont) #该中文字体
    	for t in l_text: #改变文本的大小;方法是把每一个text遍历。调用set_size方法设置它的属性
    		t.set_size=(30)
    	for t in p_text:
    		t.set_size=(20)
    	plt.axis('equal') #设置x,y轴刻度一致,这样饼图才能是圆的
    	plt.legend(loc='upper left', prop=myfont) #中文显示prop
    	plt.title('地域分布', fontsize=20, fontproperties=myfont)
    	#plt.savefig('pie.png')
    	plt.show()
    
    labels = ['青海','云南', '四川', '南京'] #定义饼状图的标签,标签是列表
    colors = ['red','yellowgreen','lightskyblue','green'] #饼图每个标签的颜色
    sizes = [22/36,4/36,9/36,1/36] #每个标签占多大,会自动去算百分比; 22/36, 4/36; 9/36, 1/36
    explode = (0.03, 0, 0, 0) #将某部分爆炸出来,使用括号,将第一块分割出来,数值的大小是分割出来的与其他两块的间隙
    plopie(labels, colors, sizes, explode)

    更多相关内容
  • python画饼状图

    2020-12-04 18:51:20
    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],"search_count":[{"count_phone":4,"count":4}]},"card":[{"des":"阿里技术人对外发布原创技术内容的最大平台;社区覆盖了云计算、大数据、人工智能、...

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],"search_count":[{"count_phone":4,"count":4}]},"card":[{"des":"阿里技术人对外发布原创技术内容的最大平台;社区覆盖了云计算、大数据、人工智能、IoT、云原生、数据库、微服务、安全、开发与运维9大技术领域。","link1":"https://developer.aliyun.com/group/?spm=a2c6h.12883283.1377930.25.7287201c9RKTCi&groupType=other","link":"https://developer.aliyun.com/","icon":"https://img.alicdn.com/tfs/TB1TlXBEkT2gK0jSZPcXXcKkpXa-200-200.png","btn2":"开发者藏经阁","tip":"打通开发者成长路径,学习中心 。全线阿里云技术大牛公开课,立即查看","btn1":"技术与产品技术圈","link2":"https://developer.aliyun.com/topic/ebook?spm=a2c6h.12883283.1362932.15.7287201c9RKTCi","title":"阿里云开发者社区"}],"search":[{"txt":"学习中心","link":"https://developer.aliyun.com/learning?spm=a2c6h.13788135.1364563.41.299f5f24exe3IS"},{"txt":"技能测试中心 ","link":"https://developer.aliyun.com/exam?spm=a2c6h.13716002.1364563.42.6cac18a3JWCM5U"},{"txt":"开发者云 ","link":"https://developer.aliyun.com/adc/?spm=a2c6h.13716002.1364563.59.6b0818a3DV0vzN"},{"txt":"在线编程 ","link":"https://developer.aliyun.com/coding?spm=5176.13257455.1364563.57.701e7facHvqi5r"},{"txt":"学习中心 ","link":"https://developer.aliyun.com/learning?spm=a2c6h.12883283.1364563.41.5f1f201c5CLDCC"},{"txt":"高校计划 ","link":"https://developer.aliyun.com/adc/college/?spm=a2c6h.13716002.1364563.58.6cac18a3JWCM5U"}],"countinfo":{"search":{"length_pc":0,"length":0},"card":{"length_pc":0,"length":0}}}

    {"$env":{"JSON":{}},"$page":{"env":"production"},"$context":{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],"search_count":[{"count_phone":4,"count":4}]},"card":[{"des":"阿里技术人对外发布原创技术内容的最大平台;社区覆盖了云计算、大数据、人工智能、IoT、云原生、数据库、微服务、安全、开发与运维9大技术领域。","link1":"https://developer.aliyun.com/group/?spm=a2c6h.12883283.1377930.25.7287201c9RKTCi&groupType=other","link":"https://developer.aliyun.com/","icon":"https://img.alicdn.com/tfs/TB1TlXBEkT2gK0jSZPcXXcKkpXa-200-200.png","btn2":"开发者藏经阁","tip":"打通开发者成长路径,学习中心 。全线阿里云技术大牛公开课,立即查看","btn1":"技术与产品技术圈","link2":"https://developer.aliyun.com/topic/ebook?spm=a2c6h.12883283.1362932.15.7287201c9RKTCi","title":"阿里云开发者社区"}],"search":[{"txt":"学习中心","link":"https://developer.aliyun.com/learning?spm=a2c6h.13788135.1364563.41.299f5f24exe3IS"},{"txt":"技能测试中心 ","link":"https://developer.aliyun.com/exam?spm=a2c6h.13716002.1364563.42.6cac18a3JWCM5U"},{"txt":"开发者云 ","link":"https://developer.aliyun.com/adc/?spm=a2c6h.13716002.1364563.59.6b0818a3DV0vzN"},{"txt":"在线编程 ","link":"https://developer.aliyun.com/coding?spm=5176.13257455.1364563.57.701e7facHvqi5r"},{"txt":"学习中心 ","link":"https://developer.aliyun.com/learning?spm=a2c6h.12883283.1364563.41.5f1f201c5CLDCC"},{"txt":"高校计划 ","link":"https://developer.aliyun.com/adc/college/?spm=a2c6h.13716002.1364563.58.6cac18a3JWCM5U"}],"countinfo":{"search":{"length_pc":0,"length":0},"card":{"length_pc":0,"length":0}}}}

    展开全文
  • 主要为大家详细介绍了python使用matplotlib画饼状图,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • python的matplotlib画饼状图

    千次阅读 2021-06-01 19:51:36
    startangle:起始绘制角度,默认是从x轴正方向逆时针起,如设定=90则从y轴正方向起; radius:float,默认为1: 饼图的半径。 shadow :在饼图下面一个阴影。默认值:False,即不阴影 counterclock :指定...

    一、 图例

    代码:

    import matplotlib.pyplot as plt
    plt.figure(figsize=(6,6))                 # 将画布设定为正方形
    label='A','B','C','D','E'                 # 各类别标签
    sizes=[35,25,18,12,10]                     # 各类别占比
    color='g','r','b','y','c'                 # 各类别颜色
    explode=(0,0,0,0,0.2)                     # 各类别的偏移半径
    patches,text1,text2=plt.pie(sizes,
                                colors=color,
                                explode=explode,
                                labels=label,
                                shadow=False,       # 无阴影设置       
                                autopct="%1.1f%%",  # 数值保留固定小数位
                                startangle=90,      # 逆时针角度设置
                                pctdistance=0.6)     # 数值距圆心半径倍数距离
    #patches饼图的返回值,text1饼图外label的文本,text2饼图内部的文本
        
    plt.axis('equal')                               # 饼状图呈正圆
    plt.legend()
    plt.show()
    

    结果:
    在这里插入图片描述

    二、饼图的其他参数:

    matplotlib.pyplot.pie(x, explode=None, labels=None, colors=None, autopct=None,
     
    pctdistance=0.6, shadow=False, labeldistance=1.1, startangle=None,
     
    radius=None, counterclock=True, wedgeprops=None, textprops=None,
     
    center=(0, 0), frame=False, rotatelabels=False, hold=None, data=None)
    
    

    解释:
    参数说明:
    x:表示用于绘制饼图的数据,也就是每一块的比例。

    explode:各类别的偏移半径,用来指定每部分的偏移量或者说指定项距离饼图圆心为n个半径。

    labels:(饼图外)指定每一个饼块的名称。

    colors:指定各模块的颜色。

    autopct :控制饼图内百分比设置,可以使用format字符串或者format function
    '%1.1f’指小数点前后位数(没有用空格补齐);

    pctdistance:float,默认值:0.6。
    指定每一项的比例autopct和距离圆心的半径。

    labeldistance:float,默认值:1.1;如<1则绘制在饼图内侧。
    指定每一项的名称label和距离圆心的半径。

    startangle:起始绘制角度,默认图是从x轴正方向逆时针画起,如设定=90则从y轴正方向画起;

    radius:float,默认为1: 饼图的半径。

    shadow :在饼图下面画一个阴影。默认值:False,即不画阴影

    counterclock :指定指针方向;布尔值,可选参数,默认为:True,即逆时针。将值改为False即可改为顺时针。

    wedgeprops :字典类型,可选参数,默认值:None。参数字典传递给wedge对象用来画一个饼图。例如:wedgeprops={‘linewidth’:3}设置wedge线宽为3。

    textprops :设置标签(labels)和比例文字的格式;字典类型,可选参数,默认值为:None。传递给text对象的字典参数。

    center :浮点类型的列表,可选参数,默认值:(0,0)。图标中心位置。

    frame :布尔类型,可选参数,默认值:False。如果是true,绘制带有表的轴框架。

    rotatelabels :布尔类型,可选参数,默认为:False。如果为True,旋转每个label到指定的角度。

    展开全文
  • Python画饼状图解决字体重叠问题

    千次阅读 多人点赞 2020-06-07 21:04:23
    python画饼状图有时会遇到因数据过小而导致的字体重叠的问题,其实函数中有几个参数可以轻松解决这种问题

    使用Python的matplotlib库绘制饼状图非常方便,只需要提供数据,就可以把图画出来

    import matplotlib.pyplot as plt
    
    data = [89,95,60]
    labels = ['甲','乙','丙']
    plt.pie(data, autopct='%.2f%%',labels=labels)
    
    plt.legend()
    plt.show()
    

    2

    但是在我们使用过程中常常碰到因数据过小而导致的字体重叠。

    3

    这时我们可以添加pctdistance参数,该参数可以认为是图中百分比距离圆心的距离。

    import matplotlib.pyplot as plt
    
    data = [89,95,60,2,4]
    labels = ['甲','乙','丙','丁','戊']
    plt.pie(data, autopct='%.2f%%',labels=labels,pctdistance=0.9)
    
    plt.legend()
    plt.show()
    

    这样问题得到了有效解决。

    4

    实际上我们再添加一个参数explode,该参数表示(每一块)离开中心距离。

    plt.pie(data, autopct='%.2f%%',labels=labels,pctdistance=0.9,explode=(0,0,0,0.4,0.2))
    

    绘制的图如下,相当于把较小的部分抠了出来。

    5

    如果觉得文章还不错的话,就请留下一个大大的赞吧!!十分感谢

    展开全文
  • python画饼图-python画饼图的多种方式

    千次阅读 2020-11-01 13:08:20
    使用matplotlib画图 导入模块 import matplotlib.pyplot as plt %matplotlib inline plt....count,多种,plt,python,pie,画饼,fig,import,opts 来源: https://blog.csdn.net/imakeithappen/article/details/104581973
  • from matplotlib import pyplot as plt#调节图形大小,宽,高plt.figure(figsize=(6,9))#定义饼状的标签,标签是列表labels = [u'第一部分',u'第二部分',u'第三部分']#每个标签占多大,会自动去算百分比sizes = ...
  • python matplotlib画饼图

    2020-11-23 18:38:37
    画饼画使用的方法是plt.pie方法,里面有几个参数可以设置,具体后面再提,先看下代码和效果。这里以常见的几个课目的值为例,算下各个科目在饼图中占的比重。import matplotlib.pyplot as pltx = [4, 9, 21, 55, 30,...
  • 主要介绍了python基于plotly实现画饼状图代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • 最全Python绘制(饼状

    万次阅读 多人点赞 2021-02-04 11:17:45
    让你彻底学会用Python绘制饼状
  • 某多多作为互联网电商的一匹黑马,短短几年用户的规模已经超过3亿。2019年9月某多多平台对所有子类目的销售额进行了统计,结果如表(二)所示。根据表(二)的数据绘制一个反映拼多多平台子类目销售额占比情况的饼图...
  • python画饼状图(pie)_matplotlib

    千次阅读 2019-02-24 11:01:52
    #二维条形直方 import matplotlib.pyplot as plt import numpy as np #定义饼状的标签,标签是列表 labels = ['Frogs','Hogs','Dogs','Logs'] #每个标签占多大,会自动去算百分比 sizes = [15,30,45,10] colors...
  • 当我们学习python的时候,总会用到一些常用的模块,接下来我就详细讲解下利用两种不同的方式画饼状图。首先利用【Tkinter】中的canvas画布来画饼状图:from tkinter import Tk, Canvasdef DrawPie():#创建窗口...
  • Python绘制饼状

    千次阅读 2021-06-03 19:27:02
    绘制饼图 matplotlib 模块使用pie函数绘制饼图,其调用方式如下: matplotlib.pyplot.pie(x, explode=None, labels=None, colors=None, autopct=None, pctdistance=0.6, shadow=False, labeldistance=1.1, ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 499
精华内容 199
关键字:

python画饼状图