我正在使用Bokeh绘制我的数据点。我有三个不同的图表垂直堆叠,一个在另一个上面使用VBox(ts1, ts2, ts3)。
我有鼠标滚动,放大/缩小,为每个情节单独工作。我想要确保,如果我可以把它们绑在一起,如果我放大/缩小其中的一个,另外2个图块也相应地放大/缩小,使我所有3个图表的x轴在任何时候都是对齐的。
发布于 2015-04-07 05:19:05
这是一个玩具程序,可以做你想做的事。它使用链接的x和y范围,这意味着不仅缩放,而且摇摄保持同步。通过查看x_range和y_range是如何在第二和第三幅图中指定的,您可以看到它是如何完成的。
import numpy as np
from bokeh.plotting import *
output_file('linked_panning.html')
N=300
x = np.linspace(0, 4*np.pi, N)
y1 = np.sin(x)
y2 = np.cos(x)
y3 = np.sin(x) + np.cos(x)
s1 = figure(plot_width=350, plot_height=350)
s1.scatter(x, y1)
s2 = figure(plot_width=350, plot_height=250, x_range=s1.x_range, y_range=s1.y_range)
s2.scatter(x, y2)
s3 = figure(plot_width=350, plot_height=350, x_range=s1.x_range, y_range=s1.y_range)
s3.scatter(x, y3)
p = gridplot(([[s1, s2, s3]]))
show(p)改编自bokeh示例库文件"linked_panning.ipynb“
https://stackoverflow.com/questions/29481687
复制相似问题