赞
踩
首先欢迎大家来看我写的博客,博客的主要内容为使用pyecharts则可以使用python来调用里面的API,达到可视化的效果。希望可以和大家一起进步,无论是赞同我还是批评我,也无论你的赞同与批评是深思熟虑还是一时兴起的,我都一并欢迎。这是我第一次写博客,有什么问题,还望大家指出,不吝赐教,谢谢!
pyecharts:
Echarts是一个由百度开源的数据可视化,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可。而Python 是一门富有表达力的语言,很适合用于数据处理。当数据分析遇上数据可视化时,pyecharts诞生了。
windows中搜索anaconda prompt打开,运行下述代码:
pip install pyecharts
或使用清华镜像下载(建议使用这个):
pip install pyecharts -i https://pypi.tuna.tsinghua.edu.cn/simple
代码如下:
#导入库
import pandas as pd
代码如下:
#读取数据
data = pd.read_csv(r'login.csv',encoding='gbk')
代码如下:
#将参数转换为日期时间并输出结果
data['时间对象序列']=pd.to_datetime(data['login_time'])
data
运行结果图:
代码如下:
data['星期'] = data['时间对象序列'].dt.dayofweek+1
data['小时数'] = data['时间对象序列'].agg(lambda x:x.hour)
data
运行结果图:
注:.dt.dayofweek+1 返回:系列或索引
代码如下:
result = data.groupby(by=['小时数','星期'])['user_id'].count().rename('用户总数')
result
运行结果图:
代码如下:
# 横轴、纵轴数据构造
x_list = [str(i+1) for i in range(24)]
y_list = ['星期一','星期二','星期三','星期四','星期五','星期六','星期日']
# 值数据构造
hour_list = [i+1 for i in range(24)]
xingqi_list = [i+1 for i in range(7)]
value_list = []
for i in range(len(hour_list)):
for j in range(len(xingqi_list)):
try:
value_list.append([i,j,int(result[hour_list[i],xingqi_list[j]])])
except Exception as e:
# print(e)
value_list.append([i,j,0])
value_list
运行结果图:
代码如下:
import pyecharts.options as opts from pyecharts.charts import HeatMap c = ( HeatMap(init_opts=opts.InitOpts(width="1000px", height="400px")) .add_xaxis(xaxis_data=x_list) .add_yaxis( series_name="登录人数", yaxis_data=y_list, value=value_list, label_opts=opts.LabelOpts( is_show=True, color="black", position="inside", ), ) .set_global_opts( legend_opts=opts.LegendOpts(is_show=False), xaxis_opts=opts.AxisOpts( type_="category", splitarea_opts=opts.SplitAreaOpts( is_show=True, areastyle_opts=opts.AreaStyleOpts(opacity=1) ), ), yaxis_opts=opts.AxisOpts( type_="category", splitarea_opts=opts.SplitAreaOpts( is_show=True, areastyle_opts=opts.AreaStyleOpts(opacity=1) ), ), visualmap_opts=opts.VisualMapOpts( min_=0, max_=5000, orient="horizontal", pos_left="center", range_color = ['#ff6666','#ccccff','#ffcccc'] ), ) ) c.render_notebook()
运行结果图:
这次Python实训不仅是对往期学习的巩固和加深,更是一次“温故知新”的过程,在老师的带领下,对现有知识又获得了新的认识,对于之前学过的Python的基本数据类型、程序的控制结构、函数的代码复用、正则表达式、组合数据类型、文件和数据格式化等,都有了新的认识与理解,并深刻感受到Python简洁却强大、简单却专业的强大魅力。 |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。