任务描述
本关任务:读取 “各站点各时刻进出站客流数据.xlsx”,绘制站点 157 各时刻进站客流饼图。
相关知识
为了完成本关任务,你需要掌握:1.如何读取数据和切片,2.如何绘制饼图。
读取数据并切片
data=pd.read_excel('各站点各时刻进出站客流数据.xlsx')
intf=data.loc[data['站点编号']==157,['站点编号','时刻','总进站客流']]
输出:
绘制饼图
饼图的绘制函数为pie(x,y,[可选项]),其中x表示待绘制的数据序列,y表示对应的标签,可选项表示绘图设置,绘图设置为百分比的小数位,可以通过autopct属性类设置,可通过title()函数来设置图标题, 示例如下:
x=intf.iloc[:,1]
y=intf.iloc[:,2]
plt.pie(y,labels=x,autopct='%1.2f%%')
plt.title('157各时刻进站客流饼图')
输出:
编程要求
根据提示,在右侧编辑器补充代码,并绘制出饼图。
测试说明
平台会对你编写的代码进行测试:
import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
plt.rcParams['font.sans-serif']=['simhei']
plt.rcParams['font.family']='sans-serif'
plt.figure(figsize=(6,4))
def test():
#********** Begin *****
#读取“各站点各时刻进出站客流数据.xlsx”,绘制站点 157 各时刻进站客流饼图
data=pd.read_excel('各站点各时刻进出站客流数据.xlsx')
intf=data.loc[data['站点编号']==157,['站点编号','时刻','总进站客流']]
x=intf.iloc[:,1]
y=intf.iloc[:,2]
plt.pie(y,labels=x,autopct='%1.2f%%')
# plt.xlabel('总进站客流')
#plt.ylabel('频数')
plt.title('155各时刻进站客流饼图')
plt.savefig('学员4.5/157各时刻进站客流饼图.png')