首页 > 编程笔记 > Python笔记 阅读:11

pyecharts EffectScatter类:绘制涟漪散点图(附带实例)

Python 程序中,可以通过 pyecharts.charts 模块中的 EffectScatter 类绘制涟漪散点图,其语法格式如下:
EffectScatter(init_opts)
其中,参数 init_opts 表示初始化配置项,其值需为 options 模块中的 InitOpts 类。

EffectScatter 类的相关方法如下:

1) add_xaxis()方法

该方法主要用于添加 x 轴数据,其语法格式如下:
add_xaxis(xaxis_data)
其中,参数 xaxis_data 表示 x 轴数据。

2) add_yaxis()方法

该方法主要用于添加 y 轴数据,其语法格式如下:
add_yaxis(series_name,y_axis,markpoint_opts,markline_opts)
其中,参数 series_name 表示系列名称;参数 y_axis 表示系列数据;参数 markpoint_opts 表示标记点配置项;参数 markline_opts 表示标记线配置项。

示例代码如下:
from pyecharts.charts import EffectScatter
from pyecharts import options as opts
from pyecharts.globals import ThemeType
import pandas as pd

# 绘制涟漪散点图
effectscatter = EffectScatter(init_opts=opts.InitOpts(theme=ThemeType.MACARONS))

# 设置图表标题、图例和提示框
effectscatter.set_global_opts(
    title_opts=opts.TitleOpts(
        '销售量分析表', pos_left='center', padding=[10, 4, 5, 90],
        subtitle='c.biancheng.net', item_gap=5,
        title_textstyle_opts=opts.TextStyleOpts(color='red', font_size=18)
    ),
    legend_opts=opts.LegendOpts(is_show=False),
    tooltip_opts=opts.TooltipOpts(
        trigger='item', trigger_on='mousemove', axis_pointer_type='shadow', background_color='pink'
    )
)

# 数据
x = ['2015年', '2016年', '2017年', '2018年', '2019年', '2020年', '2021年', '2022年']
y = {
    'C语言中文网': [1234, 4255, 3454, 6522, 2566, 4175, 5125, 6674],
    '当当': [785, 3584, 3254, 2351, 3522, 2541, 1255, 5254],
    '天猫': [2155, 3587, 4233, 3451, 6258, 5444, 6331, 6123],
    '京东': [1200, 4344, 2236, 2666, 2588, 1186, 2631, 4122],
    '新华书店': [2508, 2123, 3211, 2167, 3255, 5123, 4611, 5621]
}
df = pd.DataFrame(y, index=x)

effectscatter.add_xaxis(x)
effectscatter.add_yaxis('', df['C语言中文网'])
effectscatter.add_yaxis('', df['当当'])
effectscatter.add_yaxis('', df['天猫'])
effectscatter.add_yaxis('', df['京东'])
effectscatter.add_yaxis('', df['新华书店'])

effectscatter.render('effectscatter.html')
上面代码的运行结果如下图所示:

图 1 涟漪散点图

相关文章