pyecharts源码解读(14)图表类包charts之组合图表:时间线轮播TimeLine

本文详细介绍了Python库PyEcharts中时间线组件Timeline的使用,包括其功能、类结构和主要属性。Timeline允许在一个Echarts实例中通过2×2网格布局展示多个数据系列,支持折线图、柱状图和散点图。文章通过实例展示了如何创建和配置Timeline,以及如何添加不同类型的图表到时间线上,帮助读者理解如何利用Timeline进行动态数据展示。

当前pyecharts的版本为1.9.0。

概述

pyecharts/charts/composite_charts/包中的四个模块分别定义了组合图表类,其中pyecharts/charts/composite_charts/timeline.py模块只定义了时间线类Timeline

Timeline类继承自图表基类Base,作用为在一个echarts实例中利用2×2网格布局同时绘制4个数据系列。即实现ECharts中的直角坐标系grid功能。
注意!网格上仅支持绘制折线图,柱状图,散点图(气泡图)。

Grid类的签名为class Grid( init_opts: opts.InitOpts = opts.InitOpts())

Grid类的属性和方法大多继承自Base类,主要添加了add方法。

class pyecharts.charts.Timeline
class Timeline(
    # 初始化配置项,参考 `global_options.InitOpts`
    init_opts: opts.InitOpts = opts.InitOpts()
)
func pyecharts.charts.Timeline.add_schema
def add_schema(
    # 坐标轴类型。可选:
    # 'value': 数值轴,适用于连续数据。
    # 'category': 类目轴,适用于离散的类目数据,为该类型时必须通过 data 设置类目数据。
    # 'time': 时间轴,适用于连续的时序数据,与数值轴相比时间轴带有时间的格式化,在刻度计算上也有所不同,
    # 例如会根据跨度的范围来决定使用月,星期,日还是小时范围的刻度。
    # 'log' 对数轴。适用于对数数据。
    axis_type: str = "category",

    # 时间轴的类型。可选:
    # 'horizontal': 水平
    # 'vertical': 垂直
    orient: str = "horizontal",

    # timeline 标记的图形。
    # ECharts 提供的标记类型包括 'circle', 'rect', 'roundRect', 'triangle', 'diamond', 
    # 'pin', 'arrow', 'none'
    # 可以通过 'image://url' 设置为图片,其中 URL 为图片的链接,或者 dataURI。
    symbol: Optional[str] = None,

    # timeline 标记的大小,可以设置成诸如 10 这样单一的数字,也可以用数组分开表示宽和高,
    # 例如 [20, 10] 表示标记宽为 20,高为 10。
    symbol_size: Optional[Numeric] = None,

    # 表示播放的速度(跳动的间隔),单位毫秒(ms)。
    play_interval: Optional[Numeric] = None,

    # 表示播放按钮的位置。可选值:'left'、'right'。
    control_position: str = "left",

    # 是否自动播放。
    is_auto_play: bool = False,

    # 是否循环播放。
    is_loop_play: bool = True,

    # 是否反向播放。
    is_rewind_play: bool = False,

    # 是否显示 timeline 组件。如果设置为 false,不会显示,但是功能还存在。
    is_timeline_show: bool = True,

    # 是否反向放置 timeline,反向则首位颠倒过来
    is_inverse: bool = False,

    # Timeline 组件离容器左侧的距离。
    # left 的值可以是像 20 这样的具体像素值,可以是像 '20%' 这样相对于容器高宽的百分比,
    # 也可以是 'left', 'center', 'right'。
    # 如果 left 的值为'left', 'center', 'right',组件会根据相应的位置自动对齐
    pos_left: Optional[str] = None,

    # timeline 组件离容器右侧的距离。
    # right 的值可以是像 20 这样的具体像素值,可以是像 '20%' 这样相对于容器高宽的百分比。
    pos_right: Optional[str] = None,

    # Timeline 组件离容器上侧的距离。
    # left 的值可以是像 20 这样的具体像素值,可以是像 '20%' 这样相对于容器高宽的百分比,
    # 也可以是 'top', 'middle', 'bottom'。
    # 如果 left 的值为 'top', 'middle', 'bottom',组件会根据相应的位置自动对齐
    pos_top: Optional[str] = None,

    # timeline 组件离容器下侧的距离。
    # bottom 的值可以是像 20 这样的具体像素值,可以是像 '20%' 这样相对于容器高宽的百分比。
    pos_bottom: Optional[str] = "-5px",

    # 时间轴区域的宽度, 影响垂直的时候时间轴的轴标签和轴之间的距离
    width: Optional[str] = None,

    # 时间轴区域的高度
    height: Optional[str] = None,

    # 时间轴的坐标轴线配置,参考 `series_options.LineStyleOpts`
    linestyle_opts: Union[opts.LineStyleOpts, 
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值