Python画饼图实例(使用matplotlib,pandas,numpy)

某多多作为互联网电商的一匹黑马,短短几年用户的规模已经超过3亿。2019年9月某多多平台对所有子类目的销售额进行了统计,结果如表(二)所示。根据表(二)的数据绘制一个反映拼多多平台子类目销售额占比情况的饼图。

( 首先将下表复制保存为根目录的一个.xlsx文件中)

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

#解决中文乱码
plt.rcParams['font.sans-serif']=['SimHei']

#引入数据
df = pd.read_excel('拼多多平台子类目销售额占比.xlsx')

#设置画布大小
plt.figure(figsize=(10,6))

x = df['销售额(亿)']  #销售额
labels=df['子类目']     #子类目(外标题)
explode = [0.1,0.05,0.05,0.05,0.05,0.05,0.05,0.05,0.05]


# 绘制饼图:半径为0.5,数值保留1位小数
plt.pie(x,labels=labels,autopct='%3.1f%%',labeldistance=1.02,startangle=90,textprops={'fontsize':12},explode=explode,shadow=True)

plt.show()

在此基础上定制饼图,具体要求如下:

  • 添加标题为“拼多多平台子类目的销售额”;
  • 添加图例,以两列的形式进行显示;

添加表格,说明子类目的销售额。

explode = [0.1,0.05,0.05,0.05,0.05,0.05,0.05,0.05,0.05]
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

#解决中文乱码
plt.rcParams['font.sans-serif']=['SimHei']

#引入数据
df = pd.read_excel('拼多多平台子类目销售额占比.xlsx')

#设置画布大小
plt.figure(figsize=(10,12))

x = df['销售额(亿)']  #销售额
labels=df['子类目']     #子类目(外标题)


# 绘制饼图:半径为0.5,数值保留1位小数
explode = [0.1,0.05,0.05,0.05,0.05,0.05,0.05,0.05,0.05]
plt.pie(x,labels=labels,autopct='%3.1f%%',labeldistance=1.02,startangle=90,textprops={'fontsize':12},explode=explode,shadow=True)

#添加标题
plt.title("拼多多平台子类目的销售额",fontsize=18)

#添加图例
plt.legend(df['子类目'],loc=(0.8,0.8),ncol=2,shadow=True)

#添加表格
plt.table(cellText=[df['子类目'],df['销售额(亿)']], rowLabels=['','销售额(亿)'],colLabels=None,loc='lower left')

plt.show()

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值