版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单元1认识数据可视化运用Excel电子表格软件的图表处理功能,根据原油产量.xlsx表中数据,完成下列数据可视化的操作。操作步骤可参考拓展任务。实现石油净进口量用柱形图表示、进口依存度用折线图表示的合成图表。(2)实现原油产量和石油净进口量均用柱形图表示的合成图表。单元2Python开发环境及常用数据处理操作编程题第一题的源代码如下:importpandasaspd
#导入数据
df=pd.read_csv('d:/dataset/广播电视情况.csv',encoding='gbk')
print(df)
#获取2013-2017年的年份数据
df1=df.iloc[1:2,[8,7,6,5,4]]
year=list(df1)
print(year)
#获取2013-2017年的电视剧播出集数(万集)和进口电视剧播出集数(万集)的数据
df1=df.iloc[18:20,[8,7,6,5,4]]
print(df1)
data1=list(df1.iloc[0])
print(data1)第二题的源代码如下:importpandasaspd
#导入数据
df=pd.read_csv('d:/dataset/广播电视情况.csv',encoding='gbk')
print(df)
#获取2014-2018年的年份数据
df1=df.iloc[1:2,[7,6,5,4,3]]
year=list(df1)
print(year)
#获取2014-2018年的全国电影综合收入(亿元)和电视播映收入(亿元)的数据
df1=df.iloc[29:35:5,[7,6,5,4,3]]
print(df1)
data1=list(df1.iloc[0])
print(data1)单元3数据可视化—图表的基本类型1.填空题(1)类别比较型图表、数据关系型图表、数据分布型图表、时间序列型图表、局部整体型图表、地理空间型图表。(2)柱形图、条形图、雷达图。(3)局部组成成分、整体(4)时序、数值型(5)精准位置、地理分布2.选择题(1)B.局部整体(2)C.数据关系(3)A.0(4)D.时间序列单元4Matplotlib数据可视化1.填空题(1)pyplot,基础类元素和容器类元素。(2)容器类,基础类(3)颜色、点样式和线样式(4)text()、annotate()、grid()(5)legend()、title()和suptitle()、show()2.选择题(1)B.Axis(2)B.scattor()(3)D.plot()(4)C.pie()(5)A.bar()(6)C.bottom(7)A.where(8)B.startangle3.编程题数据集“私人汽车拥有量.xls”处理先将数据集中第一行“数据库:年度数据”删除。(1)源代码如下:importpandasaspd
importnumpyasnp
importxlrd
importmatplotlib.pyplotasplt
#导入数据
df=pd.read_excel('d:/dataset/私人汽车拥有量.xls',header=1)
print(df)
#设置2015-2019年的年份数据
year0=list([2015,2016,2017,2018,2019])
year1=[float(x+0.3)forxinyear0]
year2=[float(x+0.6)forxinyear0]
print(year1)
#获取2015-2019年的私人载客汽车拥有量、私人载货汽车拥有量和私人其他汽车拥有量的数据
data=df.iloc[1:12:5,[6,5,4,3,2]]
print(data)
data1=list(data.iloc[0])
data2=list(data.iloc[1])
data3=list(data.iloc[2])
print(data1)
print(data2)
print(data3)
#设置matplotlib正常显示中文和负号
plt.rcParams['font.sans-serif']=['SimHei']#用黑体显示中文
plt.rcParams['axes.unicode_minus']=False#正常显示负号
#创建一个绘图对象,并设置对象的宽度和高度
fig=plt.figure(figsize=(8,6))
#绘制私人载客汽车拥有量柱形图
plt.bar(year0,data1,width=0.3,color='red',edgecolor='white')
#绘制私人载货汽车拥有量柱形图
plt.bar(year1,data2,width=0.3,color='green',edgecolor='white')
#绘制私人其他汽车拥有量柱形图
plt.bar(year2,data3,width=0.3,color='blue',edgecolor='white')
#为图进行文本设置
X=year0
Y1=data1
forx,yinzip(X,Y1):
plt.text(x+0.2,y+0.1,'%.2f'%y,ha='center')
Y2=data2
forx,yinzip(X,Y2):
plt.text(x+0.4,y+0.3,'%.2f'%y,ha='center')
Y3=data3
forx,yinzip(X,Y3):
plt.text(x+0.6,y+0.05,'%.2f'%y,ha='center')
plt.xlabel('年份')#显示x轴标签
plt.ylabel('私人汽车拥有量')#显示y轴标签
plt.ylim(10,22000)#y轴取值范围
#设置x轴刻度
new_tick=np.array([iforiinrange(2015,2020)])
plt.xticks(new_tick)
#设置标题
plt.suptitle("2015—2019年私人汽车拥有量情况")
plt.title("单位:万辆",fontsize=10,loc='right')
#添加脚注
fig.text(0.1,0.02,s="数据来源:国家统计局")
#添加图例
plt.legend(['载客汽车拥有量','载货汽车拥有量','其他汽车拥有量'],loc='center')
plt.savefig('d:/image/test4-1.png')
plt.show()(2)源代码如下:importpandasaspd
importxlrd
importmatplotlib.pyplotasplt
#导入数据
df=pd.read_excel('d:/dataset/私人汽车拥有量.xls',header=1)
print(df)
#获取数据
df1=df.iloc[2:6,[0,2]]
#按大小的降序排列
data1=df1.sort_values(by='2019年',ascending=False)
#获取数据转换成列表
data=list(data1['2019年'])
#获取指标,转换成列表,并定义为饼图的标签
label=list(data1['指标'])
print(data1)
print(label)
print(data)
#设置Matplotlib正常显示中文和负号
plt.rcParams['font.sans-serif']=['SimHei']#用黑体显示中文
plt.rcParams['axes.unicode_minus']=False#正常显示负号
#创建一个绘图对象
fig=plt.figure(figsize=(8,6),dpi=100)
#设定各项距离圆心的半径
explode=[0.01,0.1,0.2,0.3]
#绘制饼图(数据、半径、标签、饼图起始点旋转的角度、百分数保留两位小数)
plt.pie(data,explode=explode,labels=label,
startangle=-90,autopct='%0.2f%%')
#添加主标题
plt.suptitle("2019年我国私人大、中、小和微型载客汽车拥有量所占比例情况")
#添加脚注
fig.text(0.1,0.02,s="数据来源:国家统计局")
#添加图例
plt.legend(loc='center')
plt.savefig('d:/image/test4-2.png')
plt.show()(3)源代码如下:importpandasaspd
importnumpyasnp
importxlrd
importmatplotlib.pyplotasplt
#导入数据
df=pd.read_excel('d:/dataset/私人汽车拥有量.xls',header=1)
print(df)
#设置2015-2019年的年份数据
year0=list([2015,2016,2017,2018,2019])
#获取2015-2019年的私人载客汽车拥有量、私人载货汽车拥有量和私人其他汽车拥有量的数据
data=df.iloc[1:12:5,[6,5,4,3,2]]
print(data)
data1=list(data.iloc[0])
data2=list(data.iloc[1])
data3=list(data.iloc[2])
print(data1)
print(data2)
print(data3)
#设置matplotlib正常显示中文和负号
plt.rcParams['font.sans-serif']=['SimHei']#用黑体显示中文
plt.rcParams['axes.unicode_minus']=False#正常显示负号
#创建一个绘图对象,并设置对象的宽度和高度
fig=plt.figure(figsize=(8,6))
#绘制私人载客汽车拥有量折线图
plt.plot(year0,data1,"r-")
#绘制私人载货汽车拥有量折线图
plt.plot(year0,data2,"g--")
#绘制私人其他汽车拥有量折线图
plt.plot(year0,data3,"b-.")
plt.xlabel('年份')#显示x轴标签
plt.ylabel('私人汽车拥有量')#显示y轴标签
plt.ylim(10,22000)#y轴取值范围
#设置x轴刻度
new_tick=np.array([iforiinrange(2015,2020)])
plt.xticks(new_tick)
#设置标题
plt.suptitle("2015—2019年私人汽车拥有量情况")
plt.title("单位:万辆",fontsize=10,loc='right')
#添加脚注
fig.text(0.1,0.02,s="数据来源:国家统计局")
#添加图例
plt.legend(['载客汽车拥有量','载货汽车拥有量','其他汽车拥有量'],loc='center')
plt.savefig('d:/image/test4-3.png')
plt.show()单元5Seaborn数据可视化1.填空题(1)API封装(2)调色板(3)set_style()和axes_style()(4)set_context()(5)despine()2.选择题(1)B.color_palette()(2)A.lineplot()(3)E.displot()(4)C.violinplot()(5)B.barplot()(6)D.pairplot()单元6pyecharts数据可视化1.填空题(1)全局配置项和系列配置项(2)set_global_opts()(3)options(4)初始化配置项、标题配置项、图例配置项、工具箱配置项、视觉映射配置项、提示框配置项、区域缩放配置项、坐标轴配置项(5)TitleOpts()(6)系列(7)bar_width2.选择题(1)B.Line()(2)A.Bar()(3)D.Funnel()(4)E.Gauge()(5)C.Radar()3.编程题(1)源代码如下:frompyechartsimportoptionsasopts
frompyecharts.chartsimportBar
importpandasaspd
importxlrd
#导入数据
df=pd.read_excel('d:/dataset/私人汽车拥有量.xls',header=1)
print(df)
#设置2015-2019年的年份数据
lable=['2015年','2016年','2017年','2018年','2019年']
#获取2015-2019年的私人载客汽车拥有量、私人载货汽车拥有量的数据
data=df.iloc[1:12:5,[6,5,4,3,2]]
print(data)
data1=list(data.iloc[0])
data2=list(data.iloc[1])
print(data1)
print(data2)
#绘制多数据系列柱状图
c=(
Bar()
.add_xaxis(lable)
.add_yaxis("私人载客汽车拥有量",data1)
.add_yaxis("私人载货汽车拥有量",data2)
.set_global_opts(#标题配置项
title_opts=opts.TitleOpts(
title="2015—2019年私人汽车拥有量情况",
subtitle="单位:万辆"),
#添加脚注
graphic_opts=opts.GraphicGroup(
graphic_item=opts.GraphicItem(left='12%',bottom='0%'),
children=[
opts.GraphicText(graphic_textstyle_opts=
opts.GraphicTextStyleOpts(text='数据来源:国家统计局',
font="14pxMicrosoftYaHei")
)]
),
#图例配置项
legend_opts=opts.LegendOpts(orient='vertical'),
#x坐标轴配置项
xaxis_opts=opts.AxisOpts(name='年份'),
#y坐标轴配置项
yaxis_opts=opts.AxisOpts(name='私人汽车拥有量',
name_gap=4)
)
.render("d:/html/test6-1.html")
)源代码如下:frompyechartsimportoptionsasopts
frompyecharts.chartsimportPie
importpandasaspd
importxlrd
#导入数据
df=pd.read_excel('d:/dataset/私人汽车拥有量.xls',header=1)
print(df)
#获取数据
df1=df.iloc[7:11,[0,2]]
#按大小的降序排列
data1=df1.sort_values(by='2019年',ascending=False)
#获取数据转换成列表
data2=list(data1['2019年'])
print(data2)
#计算私人载货汽车拥有量和
df2=sum(data2)
print(df2)
#计算私人载货汽车拥有量占比
y_data=[round(x/df2*100,3)forxindata2]
#获取指标,转换成列表,并定义为饼图的标签
data3=list(data1['指标'])
x_data=[x.replace('(万辆)','占比')forxindata3]
print(x_data)
print(y_data)
#生成系列数据项
data=[[x_data[i],y_data[i]]foriinrange(len(x_data))]
print(data)
#绘制饼图
pie=(
Pie(init_opts=opts.InitOpts(width="800px"))#设置图表大小
.add("",data,is_clockwise=True)#设置饼图扇区顺时针排布
.set_global_opts(title_opts=opts.TitleOpts(
title="2019年我国私人重型、中型、轻型和微型载货汽车拥有量所占比例",
subtitle="单位:%"),
#添加脚注
graphic_opts=opts.GraphicGroup(
graphic_item=opts.GraphicItem(left='12%',bottom='0%'),
children=[
opts.GraphicText(graphic_textstyle_opts=
opts.GraphicTextStyleOpts(
text='数据来源:国家统计局',
font="14pxMicrosoftYaHei")
)]
),
#设置图例
legend_opts=opts.LegendOpts(
pos_right="right",
orient="vertical")
)
.set_series_opts(label_opts=opts.LabelOpts(
formatter="{b}:{c}%")
)
.render("d:/html/test6-2.html")
)源代码如下:frompyechartsimportoptionsasopts
frompyecharts.chartsimportBar
importpandasaspd
importxlrd
#导入数据
df=pd.read_excel('d:/dataset/私人汽车拥有量.xls',header=1)
print(df)
#设置2015-2019年的年份数据
lable=['2015年','2016年','2017年','2018年','2019年']
#获取2015-2019年的私人载客汽车拥有量、私人载货汽车拥有量和私人其他汽车拥有量的数据
data=df.iloc[1:12:5,[6,5,4,3,2]]
print(data)
data1=list(data.iloc[0])
data2=list(data.iloc[1])
data3=list(data.iloc[2])
print(data1)
print(data2)
print(data3)
#绘制堆叠柱形图
bar=(
Bar()
.add_xaxis(lable)
.add_yaxis("私人载客汽车拥有量",data1,stack="stack1",bar_width=40)
.add_yaxis("私人载货汽车拥有量",data2,stack="stack1",bar_width=40)
.add_yaxis("私人其他汽车拥有量",data3,stack="stack1",bar_width=40)
#标签配置项:在右边显示标签
.set_series_opts(
label_opts=opts.LabelOpts(is_show=True,position="right"))
.set_global_opts(
#设置标题
title_opts=opts.TitleOpts(
title="2015-2019年的私人汽车拥有量",
subtitle="单位:万辆",
pos_left='center'),
#添加脚注
graphic_opts=opts.GraphicGroup(
graphic_item=opts.GraphicItem(left='10%',bottom='0%'),
children=[
opts.GraphicText(graphic_textstyle_opts=
opts.GraphicTextStyleOpts(text='数据来源:国家统计局',
font="14pxMicrosoftYaHei")
)]
),
#设置图例
legend_opts=opts.LegendOpts(pos_right='10%',
pos_top='5%',
orient='vertical'),
yaxis_opts=opts.AxisOpts(name='私人汽车拥有量'),
xaxis_opts=opts.AxisOpts(name='年份')
)
.render("d:/html/test6-3.html"))单元7国民经济和社会发展统计数据可视化1.填空题(1)B.overlap(A)(2)Timeline(3)内半径和外半径两项数值。(4)stack2.编程题(1)源代码如下:frompyechartsimportoptionsasopts
frompyecharts.chartsimportTimeline,Bar,Pie
importpandasaspd
importxlrd
#导入数据
df=pd.read_excel('d:/dataset/我国各类运输'
'方式旅客周转量情况.xls',
header=1)
#获取数据
df1=df.iloc[5:]
print(df1)
lable=list(df1['年份'])
data0=list(df1['旅客周转量总计'])
data1=list(df1['铁路'])
data2=list(df1['公路'])
data3=list(df1['水运'])
data4=list(df1['民航'])
print(lable)
print(data0)
print(data1)
rate1=list(round(df1['铁路']/df1['旅客周转量总计']*100,2))
rate2=list(round(df1['公路']/df1['旅客周转量总计']*100,2))
rate3=list(round(df1['水运']/df1['旅客周转量总计']*100,2))
rate4=list(round(df1['民航']/df1['旅客周转量总计']*100,2))
print(rate1)
print(rate2)
print(rate3)
print(rate4)
#定义函数
defget_year_overlap_chart(year:int):
#绘制柱形图
bar=(
Bar(opts.InitOpts(width="800px",height="650px"))
.add_xaxis(lable)
.add_yaxis("旅客周转量总计",data0,bar_width=60)
.set_global_opts(
title_opts=opts.TitleOpts(
title="2015-2019年我国旅客周转量情况",
subtitle="单位:亿人公里",
pos_left='left'),
#添加脚注
graphic_opts=opts.GraphicGroup(
graphic_item=opts.GraphicItem(left='4%',bottom='3%'),
children=[
opts.GraphicText(graphic_textstyle_opts=
opts.GraphicTextStyleOpts(text='数据来源:国家统计局',
font="14pxMicrosoftYaHei"))]
),
legend_opts=opts.LegendOpts(selected_mode='multiple',
orient='vertical',
is_show=True,
pos_right='-25',
pos_bottom='55%'))
)
#绘制饼图
pie=(
Pie()
.add(
series_name="占比",
data_pair=[
["铁路旅客周转量占比",rate1[year]],
["公路旅客周转量占比",rate2[year]],
["水运旅客周转量占比",rate3[year]],
["民航旅客周转量占比",rate4[year]]
],
center=["38%","18%"],
radius="18%",
is_clockwise=False)
.set_series_opts(label_opts=
opts.LabelOpts(formatter="{b}:{c}%"))
).set_global_opts(legend_opts=opts.LegendOpts(is_show=False))
returnbar.overlap(pie)
#创建时间线轮播多图
timeline=Timeline(init_opts=
opts.InitOpts(width="900px",height="600px"))
foryinrange(5):
print(y)
timeline.add(get_year_overlap_chart(year=y),time_point=str(y))
timeline.add_schema(is_auto_play=True,play_interval=2000)
timeline.render("d:/html/test7-1.html")源代码如下:frompyechartsimportoptionsasopts
frompyecharts.chartsimportBar
importpandasaspd
importxlrd
#导入数据
df=pd.read_excel('d:/dataset/我国各类运输'
'方式旅客周转量情况.xls',
header=1)
#获取数据
df1=df.iloc[5:]
print(df1)
lable=list(df1['年份'])
data1=list(df1['铁路'])
data2=list(df1['公路'])
data3=list(df1['民航'])
data4=list(df1['水运'])
print(lable)
print(data1)
#绘制堆叠柱形图
bar=(
Bar()
.add_xaxis(lable)
.add_yaxis("铁路旅客周转量",data1,stack="stack1",bar_width=40)
.add_yaxis("公路旅客周转量",data2,stack="stack1",bar_width=40)
.add_yaxis("民航旅客周转量",data3,stack="stack1",bar_width=40)
.add_yaxis("水运旅客周转量",data4,stack="stack1",bar_width=40)
#标签配置项:在右边显示标签
.set_series_opts(
label_opts=opts.LabelOpts(is_show=True,position="right"))
.set_global_opts(
#设置标题
title_opts=opts.TitleOpts(
title="2015-2019年我国铁路、公路、民航、水运旅客周转量情况",
subtitle="单位:亿人公里",
pos_left='center'),
#添加脚注
graphic_opts=opts.GraphicGroup(
graphic_item=opts.GraphicItem(left='10%',bottom='0%'),
children=[
opts.GraphicText(graphic_textstyle_opts=
opts.GraphicTextStyleOpts(text='数据来源:国家统计局',
font="14pxMicrosoftYaHei")
)]
),
#设置图例
legend_opts=opts.Leg
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度网络安全监测合同:为企业提供实时安全监测服务
- 2024年度物联网设备研发与集成合同
- 2024年度民间借贷纠纷解决合同协议
- 2024年度茶叶技术创新合作协议
- 2024年度兼职程序员项目管理合同
- 二零二四年度加工承揽合同:二零二四年服装定制加工协议
- 2024年度马赛克产品市场开发合同
- 2024年度品牌策划服务合同:提升企业形象与知名度
- 把握机会与挑战的职业策略计划
- 2024年度远程医疗服务平台建设合同
- 建筑装饰装修工程安全文明施工专项检查表
- 水电站330kV开关站投运调试方案
- 采购管理系统中运用业务重组的几点思考
- 第二部分项目管理人员配备情况及相关证明、业绩资料
- 旅游发展产业大会总体方案
- 民用机场竣工验收质量评定标准
- 汽车应急启动电源项目商业计划书写作范文
- 浅谈“低起点-小步子-勤练习-快反馈”教学策略
- 磁制冷技术的研究及应用
- 电缆桥架安装施工组织设计(完整版)
- 两癌筛查质控评估方案
评论
0/150
提交评论