Pyecharts-学习笔记系列之EffectScatter的各种图形示例
# -*- coding: utf-8 -*-
"""
Take small actions every day to advance your dreams.
"""
from pyecharts import options as opts
from pyecharts.globals import SymbolType
from pyecharts.charts import EffectScatter
data = [
[10.0, 8.04],
[8.0, 6.95],
[13.0, 7.58],
[9.0, 8.81],
[11.0, 8.33],
[14.0, 9.96],
[6.0, 7.24],
[4.0, 4.26],
[12.0, 10.84],
[7.0, 4.82],
[5.0, 5.68],
]
data.sort(key=lambda x: x[0],reverse = False)
# 这里的lambda是默认的,别管他,后面的x:x[0]代表字典的键(key)给sort排序,x:x[1]代表字典的值(values)给sort排序,reverse=true表示降序,reverse=false表示逆序。
x_data = [d[0] for d in data]
y_data = [d[1] for d in data]
y_data_1 = [d[1] *1.3 for d in data]
y_data_2 = [d[1] /1.3 for d in data]
y_data_3 = [d[1] /1.6 for d in data]
y_data_4 = [d[1] *1.6 for d in data]
y_data_5 = [d[1] *1.9 for d in data]
# 注意:X轴和Y轴的赋值参数名格式不一样
# X轴:xaxis_data
# Y轴:y_axis
# PYECharts 提供的标记类型包括 'RECT', 'ROUND_RECT', 'TRIANGLE', 'DIAMOND', 'ARROW', 'none' 与Echarts不同
# ECharts 提供的标记类型包括 'circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow', 'none'
c = (
EffectScatter(init_opts=opts.InitOpts(width="1200px", height="800px"))
.add_xaxis(xaxis_data=x_data)
.add_yaxis("type_1",y_axis=y_data,symbol=SymbolType.ARROW,symbol_size=6,color="blue") # 添加brush_type,scale,period会报错!
.add_yaxis("type_2",y_axis=y_data_1,symbol=SymbolType) # 默认圆形,
.add_yaxis("type_3",y_axis=y_data_2,symbol=SymbolType.DIAMOND)
.add_yaxis("type_4",y_axis=y_data_3,symbol=SymbolType.RECT)
.add_yaxis("type_5",y_axis=y_data_4,symbol=SymbolType.ROUND_RECT)
.add_yaxis("type_6",y_axis=y_data_1,symbol=SymbolType.TRIANGLE)
.set_global_opts(
title_opts=opts.TitleOpts(title="不同涟漪发散效果散点图"),
xaxis_opts=opts.AxisOpts(splitline_opts=opts.SplitLineOpts(is_show=True)),
yaxis_opts=opts.AxisOpts(splitline_opts=opts.SplitLineOpts(is_show=True)),
)
.render("不同涟漪发散效果散点图_2.html")
)
效果如图: