pyecharts可视化总结
点击这里:pyecharts官方文档
1. linux下安装
echarts 是百度开源的一个数据可视化 JS 库,pyecharts 是一个python的封装版本
由于最新版pyecharts(1.3.1)与python3.6+的兼容性问题,通过wget下载并安装(0.1.9.4)版本即可
wget https://files.pythonhosted.org/packages/7e/aa/63f80d0d2d2ee43cfe9f30822eb751ba67359aa54507a05b740ed5666416/pyecharts-0.1.9.4-py2.py3-none-any.whl
pip install pyecharts-0.1.9.4-py2.py3-none-any.whl
2. 使用说明
提供的图标类型
from pyecharts import xxx(具体如下)
Bar(柱状图/条形图)
Bar3D(3D 柱状图)
Kline(K线图)
Line(折线)
Line3D(3D 折线图)
Map(地图)
Pie(饼图)
#....等等
3.Line 折线图
from pyecharts import Line
attr =["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]
v1 =[5, 20, 36, 10, 10, 100]v2 =[55, 60, 16, 20, 15, 80]
line =Line("折线图示例")
line.add("商家A", attr, v1, mark_point=["average"])
line.add("商家B", attr, v2, is_smooth=True, mark_line=["max", "average"])
line.render() # 默认保存为'render.html'到当前目录下
Line折线图的一些参数和方法
# 下面均是Line中的默认值
is_smooth = False # 线条平滑处理
xaxis_rotate = 0 # x/y轴表项名旋转角度,当空间太小时使用
interval = 0 # 用于显示所有x/y轴上的表项
line_width = 1 # 线条宽度
label_color = ['red', 'blue', ..] # 设置每个线条的颜色,注意对应线条数目
# laber_color = ['#FF0000','#800080','#00FF00','#FFA500','#5F9EA0']
is_random = False # 随机显示线条颜色
width = 800
height = 400 # 当默认宽高显示不全时,可以适当增大该数值
4. Kline k线图
传入List的格式为:[open, close, low, high]
分别对应开盘价,收盘价,最低价,最高价
Kline函数用法:
kline.add(....)
is_datazoom_show = False: # 是否下置伸缩滑条
mark_point = []: # 标记最大最小值, 用法:mark_point = ['max', 'min','average']
mark_line = []: # 用一根水平线标记,用法同上
mark_point_symbol = ’pin‘: # 标记点图形,有'circle','rect'
mark_line_valuedim=['lowest', 'highest']: # 指定划分依照的维度
# ps, 这个使用有bug,没效果
如下是000001平安银行在2019-11-1到2019-12-6的K线图实例:
from pyecharts import Kline
price = [[16.35, 16.86, 16.28, 17.0], [16.98, 16.92, 16.77, 17.25], [16.8, 17.15, 16.79, 17.44], [17.06, 16.96, 16.88, 17.26], [16.93, 16.89, 16.75, 17.07], [16.98, 16.65, 16.64, 17.02],
[16.5, 16.28, 16.2, 16.53], [16.29, 16.33, 16.16, 16.37], [16.29, 16.33, 16.06, 16.46], [16.43, 16.32, 16.25, 16.48], [16.39, 16.34, 16.24, 16.55], [16.35, 16.45, 16.23, 16.55],
[16.45, 16.41, 16.31, 16.48], [16.3, 15.85, 15.77, 16.3], [15.75, 15.86, 15.63, 15.87], [15.89, 15.59, 15.55, 15.92], [15.64, 15.8, 15.54, 15.84], [15.89, 15.62, 15.49, 15.89],
[15.64, 15.47, 15.39, 15.64], [15.47, 15.49, 15.44, 15.54], [15.54, 15.29, 15.18, 15.55], [15.35, 15.36, 15.23, 15.43], [15.3, 15.45, 15.21, 15.46],
[15.34, 15.31, 15.21, 15.41], [15.35, 15.43, 15.3, 15.48], [15.47, 15.6, 15.46, 15.72]]
kline = Kline()
kline.add('日k', list(len(price)), price)
kline.render()
# 生成render.html文件在根目录下
下面是将DataFrame格式生成k线图, 以聚宽(JQdata)为例:
from pyecharts import kline
# dt格式:['open', 'close', 'high', 'low', 'start_date', ...]
kline.add('日k', dt.index,
dt.apply(lambda x: [x['open'], x['close'], x['low'], x['high']], axis=1).tolist(),
is_datazoom_show=True)
kline.render()