首先导入本次项目用的包和数据
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
from pyecharts.charts import Bar,Pie
from pyecharts import options as opts
from pyecharts.globals import ThemeType
import warnings
warnings.filterwarnings('ignore')
plt.rcParams['font.sans-serif']=['SimHei'] #显示中文标签
plt.rcParams['axes.unicode_minus']=False
data = pd.read_csv('2022.csv')
data.head()
# 各个国家的总奖牌数
plt.figure(figsize=(20,10))
sns.barplot(x='国家',y='总数',data=data)
# 各个国家的金牌数
plt.figure(figsize=(20,12))
sns.barplot(x='国家',y='金牌',data=data)
# 各个国家的银牌数
plt.figure(figsize=(20,12))
sns.barplot(x='国家',y='银牌',data=data)
# 给原始数据加上所属州
bei_mei = ['美国','加拿大']
ou = ['挪威','德国','瑞典','荷兰','奥地利','瑞士','ROC','法国','意大利','斯洛文尼亚','芬兰','英国','匈牙利','斯洛伐克','捷克','比利时','白俄罗斯','乌克兰','西班牙','拉脱维亚','波兰','爱沙尼亚']
ya = ['中国','日本','韩国']
da_yang = ['新西兰','澳大利亚']
zhou_list = []
for item in data['国家'].values:
if item in bei_mei:
zhou = '北美洲'
if item in ou:
zhou = '欧洲'
if item in ya:
zhou = '亚洲'
if item in da_yang:
zhou = '大洋洲'
zhou_list.append(zhou)
data['州'] = zhou_list
data.head()
# 获奖的国家所在州的分布
a4 = Bar(init_opts=opts.InitOpts(theme = ThemeType.CHALK))
a4.add_xaxis(data['州'].value_counts().index.tolist())
a4.add_yaxis('各个州的数量',data['州'].value_counts().tolist())
a4.set_series_opts(label_opts=opts.LabelOpts(position="top"))
a4.set_global_opts(title_opts=opts.TitleOpts(title="各个州的国家数"))
a4.render_notebook()
# 各个州的国家数占比
a5 = Pie(init_opts=opts.InitOpts(theme = ThemeType.DARK))
a5.add(series_name='州',
data_pair=[list(z) for z in zip(data['州'].value_counts().index.tolist(),data['州'].value_counts().tolist())],
rosetype='radius',
radius='70%',
)
a5.set_global_opts(title_opts=opts.TitleOpts(title="各个州的国家数占比",
pos_left='center',
pos_top=30))
a5.set_series_opts(tooltip_opts=opts.TooltipOpts(trigger='item',formatter='{a}
{b}:{c} ({d}%)'))
a5.render_notebook()
# 每个州的总奖牌数
a6 = Bar(init_opts=opts.InitOpts(theme = ThemeType.DARK))
a6.add_xaxis(data.groupby('州').agg('sum')['总数'].sort_values(ascending=False).index.tolist())
a6.add_yaxis('各个州的总奖牌数量',data.groupby('州').agg('sum')['总数'].sort_values(ascending=False).values.tolist())
a6.set_series_opts(label_opts=opts.LabelOpts(position="top"))
a6.set_global_opts(title_opts=opts.TitleOpts(title="各个州的总奖牌数"))
a6.render_notebook()
# 各个州的总奖牌数占比
a7 = Pie(init_opts=opts.InitOpts(theme = ThemeType.DARK))
a7.add(series_name='州',
data_pair=[list(z) for z in zip(data.groupby('州').agg('sum')['总数'].sort_values(ascending=False).index.tolist(),data.groupby('州').agg('sum')['总数'].sort_values(ascending=False).values.tolist())],
rosetype='radius',
radius='70%',
)
a7.set_global_opts(title_opts=opts.TitleOpts(title="各个州的总奖牌数占比",
pos_left='center',
pos_top=30))
a7.set_series_opts(tooltip_opts=opts.TooltipOpts(trigger='item',formatter='{a}
{b}:{c} ({d}%)'))
a7.render_notebook()
# 每个州的金牌数
a8 = Bar(init_opts=opts.InitOpts(theme = ThemeType.DARK))
a8.add_xaxis(data.groupby('州').agg('sum')['金牌'].sort_values(ascending=False).index.tolist())
a8.add_yaxis('各个州的金牌数量',data.groupby('州').agg('sum')['金牌'].sort_values(ascending=False).values.tolist())
a8.set_series_opts(label_opts=opts.LabelOpts(position="top"))
a8.set_series_opts(itemstyle_opts=opts.ItemStyleOpts(color='#CD7F32'))
a8.set_global_opts(title_opts=opts.TitleOpts(title="各个州的金牌数"))
a8.render_notebook()
# 每个州的银牌数
a10 = Bar(init_opts=opts.InitOpts(theme = ThemeType.DARK))
a10.add_xaxis(data.groupby('州').agg('sum')['银牌'].sort_values(ascending=False).index.tolist())
a10.add_yaxis('各个州的银牌数量',data.groupby('州').agg('sum')['银牌'].sort_values(ascending=False).values.tolist())
a10.set_series_opts(label_opts=opts.LabelOpts(position="top"))
a10.set_series_opts(itemstyle_opts=opts.ItemStyleOpts(color='#E6E8FA'))
a10.set_global_opts(title_opts=opts.TitleOpts(title="各个州的银牌数"))
a10.render_notebook()
# 各个州的银牌数占比
a11 = Pie(init_opts=opts.InitOpts(theme = ThemeType.CHALK))
a11.add(series_name='州',
data_pair=[list(z) for z in zip(data.groupby('州').agg('sum')['银牌'].sort_values(ascending=False).index.tolist(),data.groupby('州').agg('sum')['银牌'].sort_values(ascending=False).values.tolist())],
rosetype='radius',
radius='70%',
)
a11.set_global_opts(title_opts=opts.TitleOpts(title="各个州的银牌数占比",
pos_left='center',
pos_top=30))
a11.set_series_opts(tooltip_opts=opts.TooltipOpts(trigger='item',formatter='{a}
{b}:{c} ({d}%)'))
a11.render_notebook()
# 每个州的铜牌数
a12 = Bar(init_opts=opts.InitOpts(theme = ThemeType.DARK))
a12.add_xaxis(data.groupby('州').agg('sum')['铜牌'].sort_values(ascending=False).index.tolist())
a12.add_yaxis('各个州的铜牌数量',data.groupby('州').agg('sum')['铜牌'].sort_values(ascending=False).values.tolist())
a12.set_series_opts(itemstyle_opts=opts.ItemStyleOpts(color='#B87333'))
a12.set_series_opts(label_opts=opts.LabelOpts(position="top"))
a12.set_global_opts(title_opts=opts.TitleOpts(title="各个州的铜牌数"))
a12.render_notebook()
# 各个州的铜牌数占比
a13 = Pie(init_opts=opts.InitOpts(theme = ThemeType.DARK))
a13.add(series_name='州',
data_pair=[list(z) for z in zip(data.groupby('州').agg('sum')['铜牌'].sort_values(ascending=False).index.tolist(),data.groupby('州').agg('sum')['铜牌'].sort_values(ascending=False).values.tolist())],
radius='70%',
)
a13.set_global_opts(title_opts=opts.TitleOpts(title="各个州的铜牌数占比",
pos_left='center',
pos_top=30))
a13.set_series_opts(tooltip_opts=opts.TooltipOpts(trigger='item',formatter='{a}
{b}:{c} ({d}%)'))
a13.render_notebook()
# 每个州的金牌占比
jin = data.groupby('州').sum()['金牌']
zong = data.groupby('州').sum()['总数']
result = round(jin/zong,2)
a13 = Pie(init_opts=opts.InitOpts(theme = ThemeType.LIGHT))
a13.add(series_name='州',
data_pair=[list(z) for z in zip(result.index,result.values)],
rosetype='radius',
radius='70%',
)
a13.set_global_opts(title_opts=opts.TitleOpts(title="每个州的金牌占比",
pos_left='center',
pos_top=30))
a13.set_series_opts(tooltip_opts=opts.TooltipOpts(trigger='item'))
a13.render_notebook()
# 每个州的银牌占比
yin = data.groupby('州').sum()['银牌']
zong = data.groupby('州').sum()['总数']
result = round(yin/zong,2)
a13 = Pie(init_opts=opts.InitOpts(theme = ThemeType.ESSOS))
a13.add(series_name='州',
data_pair=[list(z) for z in zip(result.index,result.values)],
rosetype='radius',
radius='70%',
)
a13.set_global_opts(title_opts=opts.TitleOpts(title="每个州的银牌占比",
pos_left='center',
pos_top=30))
a13.set_series_opts(tooltip_opts=opts.TooltipOpts(trigger='item'))
a13.render_notebook()
以下是心得体会:
通过这次Python项目实战,我学到了许多新的知识,这是一个让我把书本上的理论知识运用于实践中的好机会。原先,学的时候感叹学的资料太难懂,此刻想来,有些其实并不难,关键在于理解。
在这次实战中还锻炼了我其他方面的潜力,提高了我的综合素质。首先,它锻炼了我做项目的潜力,提高了独立思考问题、自我动手操作的潜力,在工作的过程中,复习了以前学习过的知识,并掌握了一些应用知识的技巧等
在此次实战中,我还学会了下面几点工作学习心态:
1)继续学习,不断提升理论涵养。在信息时代,学习是不断地汲取新信息,获得事业进步的动力。作为一名青年学子更就应把学习作为持续工作用心性的重要途径。走上工作岗位后,我会用心响应单位号召,结合工作实际,不断学习理论、业务知识和社会知识,用先进的理论武装头脑,用精良的业务知识提升潜力,以广博的社会知识拓展视野。
2)努力实践,自觉进行主角转化。只有将理论付诸于实践才能实现理论自身的价值,也只有将理论付诸于实践才能使理论得以检验。同样,一个人的价值也是透过实践活动来实现的,也只有透过实践才能锻炼人的品质,彰显人的意志。
3)提高工作用心性和主动性。实习,是开端也是结束。展此刻自我面前的是一片任自我驰骋的沃土,也分明感受到了沉甸甸的职责。在今后的工作和生活中,我将继续学习,深入实践,不断提升自我,努力创造业绩,继续创造更多的价值。
这次Python实战不仅仅使我学到了知识,丰富了经验。也帮忙我缩小了实践和理论的差距。在未来的工作中我会把学到的理论知识和实践经验不断的应用到实际工作中,为实现理想而努力。
在这次实战中还锻炼了我其他方面的潜力,提高了我的综合素质。首先,它锻炼了我做项目的潜力,提高了独立思考问题、自我动手操作的潜力,在工作的过程中,复习了以前学习过的知识,并掌握了一些应用知识的技巧等
在此次实战中,我还学会了下面几点工作学习心态:
1)继续学习,不断提升理论涵养。在信息时代,学习是不断地汲取新信息,获得事业进步的动力。作为一名青年学子更就应把学习作为持续工作用心性的重要途径。走上工作岗位后,我会用心响应单位号召,结合工作实际,不断学习理论、业务知识和社会知识,用先进的理论武装头脑,用精良的业务知识提升潜力,以广博的社会知识拓展视野。
2)努力实践,自觉进行主角转化。只有将理论付诸于实践才能实现理论自身的价值,也只有将理论付诸于实践才能使理论得以检验。同样,一个人的价值也是透过实践活动来实现的,也只有透过实践才能锻炼人的品质,彰显人的意志。
3)提高工作用心性和主动性。实习,是开端也是结束。展此刻自我面前的是一片任自我驰骋的沃土,也分明感受到了沉甸甸的职责。在今后的工作和生活中,我将继续学习,深入实践,不断提升自我,努力创造业绩,继续创造更多的价值。
这次Python实战不仅仅使我学到了知识,丰富了经验。也帮忙我缩小了实践和理论的差距。在未来的工作中我会把学到的理论知识和实践经验不断的应用到实际工作中,为实现理想而努力。