大家好,我是 👉【Python当打之年(点击跳转)】
本期我们利用Python分析快手APP全国大学生用户数据,看看:
希望对小伙伴们有所帮助,如有疑问或者需要改进的地方可以私信小编。
涉及到的库:
可视化部分:
import pandas as pd
from pyecharts import options as opts
from pyecharts.charts import Map
from pyecharts.charts import Bar
from pyecharts.charts import Grid
from pyecharts.charts import PictorialBar
df = pd.read_csv('kuaishou.csv')
df.head(10)


一共 704726 条数据。
df[['学校省份','学校城市']] = df['学校城市'].str.split(':',expand=True)
df.head(10)

bar = (
Bar(init_opts=opts.InitOpts(width='1000px', height='1000px',bg_color='#0d0735'))
.add_xaxis(df_rate_tmp['学校'].tolist())
.add_yaxis("", df_rate_tmp['频次'].tolist())
.set_series_opts(label_opts=opts.LabelOpts(position="right",
font_size=12,
font_weight='bold',
formatter='{c} 次'),
itemstyle_opts={"normal": {
"barBorderRadius": [30, 30, 30, 30],
'shadowBlur': 10,
'shadowColor': 'rgba(0,191,255,0.5)',
'shadowOffsetY': 1,
'opacity': 0.8
}
}
)
.set_global_opts(
xaxis_opts=opts.AxisOpts(is_show=False,),
yaxis_opts=opts.AxisOpts(
axislabel_opts=opts.LabelOpts(font_size=13,color='#fff200'),
axistick_opts=opts.AxisTickOpts(is_show=False),
axisline_opts=opts.AxisLineOpts(is_show=False)
),
title_opts=opts.TitleOpts(title="学生使用频次最多的学校",pos_left='center',pos_top='1%',
title_textstyle_opts=opts.TextStyleOpts(font_size=22,color="#38d9a9")),
visualmap_opts=opts.VisualMapOpts(is_show=False,is_piecewise=False),
graphic_opts=[
opts.GraphicGroup(
graphic_item=opts.GraphicItem(left="5%", top="5%"),
children=[
opts.GraphicRect(
graphic_item=opts.GraphicItem(
z=0, left="center", top="middle"
),
graphic_shape_opts=opts.GraphicShapeOpts(width=900, height=900),
graphic_basicstyle_opts=opts.GraphicBasicStyleOpts(
fill="rgba(0,0,0,0)",
stroke="#fff",
line_width=2,
shadow_blur=20,
shadow_offset_x=5,
shadow_offset_y=5,
shadow_color="#4169E1",
),
),
],
)
]
)
.reversal_axis()
)


map_chart = Map(init_opts=opts.InitOpts(theme='light',width='1000px', height='600px',bg_color='#26A69A'))
map_chart.add('',
[list(z) for z in zip(province_num['学生省份'].tolist(), province_num['数量'].tolist())],
maptype='china',
is_map_symbol_show=False,
itemstyle_opts={
'normal': {
'shadowColor': 'rgba(0, 0, 0, .5)',
'shadowBlur': 5,
'shadowOffsetY': 0,
'shadowOffsetX': 0,
'borderColor': '#fff'
}
}
)
map_chart.set_global_opts(
visualmap_opts=opts.VisualMapOpts(
max_= 40000,
is_piecewise=True,
is_show=True,
split_number = 8,
pos_top='60%',
pos_left='8%',
range_text=['使用频次:', ''],
range_color=['#f7f4f9','#e7e1ef','#d4b9da','#c994c7','#df65b0','#e7298a','#ce1256','#91003f']
),
legend_opts=opts.LegendOpts(is_show=False),
tooltip_opts=opts.TooltipOpts(is_show=True,trigger='item',formatter='{b}: {c}'),
title_opts=dict(text='各省份生源数量',left='center',top='8%',textStyle=dict(color='#DC143C', font_size=20, font_weight='bold')),)
map_chart.render_notebook()


篇幅原因,部分代码未展示,在线运行地址(含源码):
https://www.heywhale.com/mw/project/62e88687f417226fda63e216
文章首发:微信公众号 “Python当打之年” ,Python编程技巧推送,希望大家可以喜欢。
以上就是本期为大家整理的全部内容了,赶快练习起来吧,原创不易,喜欢的朋友可以点赞、收藏也可以分享(注明出处)让更多人知道。