散景 - 当output_backend =" webgl"时,绘图重叠在xaxis上

时间:2018-01-25 10:43:10

标签: python data-visualization bokeh

我正在使用散景(和bokeh.models API)编写数据可视化应用程序,我发现了一个奇怪的行为:当使用平移工具时,绘图重叠X轴,但仅当我设置output_backend =& #34; webgl的" (我需要webgl来保持用户体验#34;我计划可视化的大型数据集)

我做错了吗?这是一个错误吗?

plot overlaps x axis

生成此图像的代码如下:

    from bokeh.models import ColumnDataSource, Plot, DataRange1d, LinearAxis, Line
from bokeh.models import PanTool, ResetTool
from bokeh.plotting import show
import numpy as np

# generate data
x = [i for i in np.arange(0, 70, 0.1)]
y = np.sin(x)
source = ColumnDataSource(data = dict(x = x, y = y))

# configure plot
plot = Plot(x_range=DataRange1d(), y_range=DataRange1d(), plot_height=300, plot_width=400, output_backend="webgl")
x_axis = LinearAxis()
y_axis = LinearAxis()
plot.add_layout(x_axis, "below")
plot.add_layout(y_axis, "left")
plot.add_tools(PanTool(), ResetTool())

# add Line to plot
glyph = Line(x="x", y="y", line_color="red")
glyphrenderer = plot.add_glyph(source, glyph)

show(plot)

1 个答案:

答案 0 :(得分:1)

当前版本中存在webgl的当前已知问题和错误(大约0.12.13)。遗憾的是,webgl组件的原始维护者不再为项目做出贡献,因此在解决这些问题之前,这将是一段未知的时间。当事情变得更好时,我可以建议尝试更早版本。

也就是说,如果上面的代码表明你的实际数据大小,那么只需关闭webGL,标准的HTML画布渲染就可以解决任何小问题。