前言
在对数据的掌握及分析变得愈加重要的当今时代,数据可视化作为提高用户对数据的理解程度,创新架构,增进体验的重要一环,一向富有表现力的Python语言应当可以发挥更大作用,优秀的pyechart第三方库即在这样的背景下诞生。
目录
提示:以下是本篇文章正文内容,下面案例可供参考
一、数据大屏展示
运行之后存在的html文件,在浏览器查看
二、pyecharts是什么?
Echarts是一个由百度开源的商业级数据图表,它是一个纯JavaScript的图表库,可以为用户提供直观生动,可交互,可高度个性化定制的数据可视化图表,赋予了用户对数据进行挖掘整合的能力。
我们即可定义:pyecharts库是一个用于生成 echarts图表的类库。
三、pyecharts可视化大屏的实现步骤
1.制作数据大屏第一个图像(柱形图)
1.1赋值对象与数据、导入库
# 各组组名
name_group = ['陈小春部落','李承铉部落','张晋部落','赵文卓部落']
# 各组个人战得分
score_solo = [275,226,253,241]
# 各组双人合作得分
score_double = [218,231,283,254]
# 各组阵营合作得分
score_group = [827,895,772,803]
# 计算各组总得分
score_total = []
for i,j,k in zip(score_solo,score_double,score_group):
score_total.append(i+j+k)
score_total
#导入需要的库
from pyecharts import options as opts
from pyecharts.charts import Bar
from pyecharts.globals import ThemeType
bar = (
Bar(init_opts=opts.InitOpts(width='600px',height='400px',theme=ThemeType.DARK))
.add_xaxis(name_group)
.add_yaxis("solo赛",score_solo)
.add_yaxis("双人赛",score_double)
.add_yaxis("团体赛",score_group)
.add_yaxis("总得分",score_total,gap='0%')
.set_colors(['orange','skyblue','#ff8080', '#76dd0f'])
.set_global_opts(title_opts=opts.TitleOpts(title="第四次公演各组评分柱形图"))
)
bar.render_notebook()
1.2输出结果的图像
各组评分柱形图
2.制作数据大屏第二个图像(玫瑰图)
1.1导入数据读取以及处理数据结构
代码和代码效果如下(示例):
import pandas as pd
data_age = pd.read_excel('./data/披荆斩棘的哥哥年龄排序.xlsx')
data_age
# 加工出姓名和年龄
# 字符串切片方法
data_age['姓名'] = data_age['字段'].agg(lambda x:x.split('(')[0])
# 正则表达式匹配中文和数字
import re
data_age['姓名2'] = data_age['字段'].agg(lambda x:re.findall('[\u4e00-\u9fa5]+',x)[0])
data_age['年龄'] = data_age['字段'].agg(lambda x:int(re.findall('\d+',x)[0]))
data_age
# 年龄数据分箱
data_age['年龄区间'] = pd.cut(data_age['年龄'],
bins = [0,30,40,50,60],
labels = ['30岁以下','30-40岁','40-50岁','50岁以上'])
data_age
# 年龄区间数量统计
age_counts = data_age['年龄区间'].value_counts()
age_counts
# 数据结构重组
charts_data_age = [z for z in zip(age_counts.index,age_counts.tolist())]
charts_data_age