Pyecharts全局配置项03---DataZoomOpts

Intro

  DataZoomOpts可以提供区域缩放的功能,当数据很多,我们想看某些局部数据信息时,可以通过区域缩放查看更细节的数据。版本信息如下:

  • python 3.7.0
  • pyecharts 1.6.2
import pyecharts
print("pyecharts版本: "+pyecharts.__version__)
import sys
print("python版本: "+sys.version)
pyecharts版本: 1.6.2
python版本: 3.7.0 (default, Jun 28 2018, 08:04:48) [MSC v.1912 64 bit (AMD64)]

Demo

  以折线图为例,看下常用参数的设置方式~

import pyecharts
from pyecharts.charts import Line
from pyecharts import options as opts
x = list(range(0, 100))
y1 = [i * 2 + 1 for i in list(range(0, 100))]
y2 = [i * 3 + 2 for i in list(range(0, 100))]
y3 = [(i+1)/10 * 3  for i in list(range(0, 100))]
line1 = (
    Line()
    .add_xaxis(xaxis_data=x)
    .add_yaxis("y1", y1
               ,color="blue",is_symbol_show=True
               ,label_opts=opts.LabelOpts(is_show=False)
               ,markline_opts=opts.MarkLineOpts(data=[opts.MarkLineItem(y=5)])# 设置水平线
              )
    .add_yaxis("y2", y2
               ,color="red",is_symbol_show=True
               ,label_opts=opts.LabelOpts(is_show=False)
               ,symbol="triangle"#设置点的形状'circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow', 'none'"rect"
               ,markline_opts=opts.MarkLineOpts(data=[opts.MarkLineItem(y=5)])
              )  
    .set_colors(colors=["blue","red"]) # 如果不加上这句,legends和line的颜色不一致,这个相当于全局颜色设置
    .set_global_opts(title_opts=opts.TitleOpts(title="Love",pos_right="50%") # 设置标题
                    ,legend_opts=opts.LegendOpts(pos_right="10%",pos_top="20%",orient="vertical") # 设置图例
                    ,tooltip_opts =opts.TooltipOpts(trigger='axis',axis_pointer_type='cross')
                    ,toolbox_opts =opts.ToolboxOpts(is_show=True,orient='horizontal')
                    ,datazoom_opts=opts.DataZoomOpts(range_start=10,range_end=30) # 坐标轴进行缩放
                    ,xaxis_opts =opts.AxisOpts(name="Date")
                    ,yaxis_opts =opts.AxisOpts(name="Rate")
                    )
)
line1.render_notebook()

在这里插入图片描述

参数设置

这里和官网上一毛一样,可以直接看官网~

class DataZoomOpts(
    # 是否显示 组件。如果设置为 false,不会显示,但是数据过滤的功能还存在。
    is_show: bool = True,

    # 组件类型,可选 "slider", "inside"
    type_: str = "slider",

    # 拖动时,是否实时更新系列的视图。如果设置为 false,则只在拖拽结束的时候更新。
    is_realtime: bool = True,

    # 数据窗口范围的起始百分比。范围是:0 ~ 100。表示 0% ~ 100%。
    range_start: Numeric = 20,

    # 数据窗口范围的结束百分比。范围是:0 ~ 100
    range_end: Numeric = 80,

    # 数据窗口范围的起始数值。如果设置了 start 则 startValue 失效。
    start_value: Union[int, str, None] = None,

    # 数据窗口范围的结束数值。如果设置了 end 则 endValue 失效。
    end_value: Union[int, str, None] = None,

    # 布局方式是横还是竖。不仅是布局方式,对于直角坐标系而言,也决定了,缺省情况控制横向数轴还是纵向数轴
    # 可选值为:'horizontal', 'vertical'
    orient: str = "horizontal",

    # 设置 dataZoom-inside 组件控制的 x 轴(即 xAxis,是直角坐标系中的概念,参见 grid)。
    # 不指定时,当 dataZoom-inside.orient 为 'horizontal'时,默认控制和 dataZoom 平行的第一个 xAxis
    # 如果是 number 表示控制一个轴,如果是 Array 表示控制多个轴。
    xaxis_index: Union[int, Sequence[int], None] = None,

    # 设置 dataZoom-inside 组件控制的 y 轴(即 yAxis,是直角坐标系中的概念,参见 grid)。
    # 不指定时,当 dataZoom-inside.orient 为 'horizontal'时,默认控制和 dataZoom 平行的第一个 yAxis
    # 如果是 number 表示控制一个轴,如果是 Array 表示控制多个轴。
    yaxis_index: Union[int, Sequence[int], None] = None,

    # 是否锁定选择区域(或叫做数据窗口)的大小。
    # 如果设置为 true 则锁定选择区域的大小,也就是说,只能平移,不能缩放。
    is_zoom_lock: bool = False,

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

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

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

    # dataZoom-slider组件离容器下侧的距离。
    # bottom 的值可以是像 20 这样的具体像素值,可以是像 '20%' 这样相对于容器高宽的百分比。
    # 默认自适应。
    pos_bottom: Optional[str] = None,
)

Ref

[1] 区域缩放配置项文档

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值