pyecharts网格图共轮缩放

问题描述 投票:0回答:1

在 pyecharts 中,我创建了一个网格,其中两个图形具有相同的 x 轴。我希望能够使用鼠标滚轮同时缩放两者。它可以使用

datazoom_opts=[opts.DataZoomOpts(type_="inside")]
在单个图表上工作,但我找不到在
Grid
中拥有类似内容的方法。

在 javascript

echarts
库中,有
echarts.connect
方法似乎可以执行此操作(例如
echarts.connect([chart1, chart2]);
),但它似乎不存在于
pyecharts
中。

请参阅下面的最小功能示例:

from pyecharts import options as opts
from pyecharts.charts import Bar, Grid

# if you're using jupyter lab
from pyecharts.globals import CurrentConfig, NotebookType
CurrentConfig.NOTEBOOK_TYPE = NotebookType.JUPYTER_LAB
CurrentConfig.ONLINE_HOST

from random import randrange
x=list(range(0,100))

a = Bar()
a.add_xaxis(x)
a.add_yaxis("ax", [randrange(100) for x in range(0,100)])
a.set_global_opts(
    title_opts=opts.TitleOpts(title="Bar-a"),
    datazoom_opts=[opts.DataZoomOpts(type_="inside")],)

b = Bar()
b.add_xaxis(x)
b.add_yaxis("bx", [randrange(100) for x in range(0,100)])
b.set_global_opts(
    title_opts=opts.TitleOpts(title="Bar-b"),
    datazoom_opts=[opts.DataZoomOpts(type_="inside")],)

gr = Grid()
gr.add(a, grid_opts=opts.GridOpts(height="30%"))
gr.add(b, grid_opts=opts.GridOpts(pos_top="50%", height="30%"))

gr.render_notebook()

我可以使用鼠标滚轮放大和缩小第一张图(a)。第二个是静态的。我想缩放两者以保持它们对齐。

result of above code

python echarts
1个回答
0
投票

我不知道在 pyecharts 中具体是如何完成的,但在 echarts 中,您可以在同一个图表中创建多个网格实例,并指定哪些轴应该位于哪个网格中以及哪些轴应该由缩放控制。请参阅此示例

pyecharts 文档中 DataZoomOpts 的属性 xaxis_index 表明这也应该是可能的。不过我没有找到网格选项。

© www.soinside.com 2019 - 2024. All rights reserved.