【问题标题】:Bokeh figure doesn't show散景图不显示
【发布时间】:2016-11-23 23:00:57
【问题描述】:

我是 python 新手。我用我自己的数据集尝试了http://docs.bokeh.org/en/latest/docs/gallery/color_scatter.html 中给出的示例,它看起来像这样

   Unnamed: 0  fans                      id  stars
0           0    69  18kPq7GPye-YQ3LyKyAZPw   4.14
1           1  1345  rpOyqD_893cqmDAtJLbdog   3.67
2           2   105  4U9kSBLuBDU391x6bxU-YA   3.68
3           3     2  fHtTaujcyKvXglE33Z5yIw   4.64
4           4     5  SIBCL7HBkrP4llolm4SC2A   3.80

这是我的代码:

import pandas as pd

from bokeh.plotting import figure, show, output_file
op = pd.read_csv('FansStars.csv')

x = op.stars
y = op.fans
radii = 1.5
colors = ["#%02x%02x%02x" % (int(r), int(g), 150) for r, g in zip(50+2*x, 30+2*y)]

TOOLS="hover,crosshair,pan,wheel_zoom,zoom_in,zoom_out,box_zoom,undo,redo,reset,tap,save,box_select,poly_select,lasso_select,"

p = figure(tools=TOOLS)

p.scatter(x, y, radius=radii,
      fill_color=colors, fill_alpha=0.6,
      line_color=None)

output_file("color_scatter.html", title="color_scatter.py example")

show(p)

但是,当我运行此代码时,我没有收到任何错误,并且打开了一个网页,但是是空白的。重新加载几次后,我终于可以看到工具了,但仅此而已。 谁能告诉我我哪里出错了? 谢谢!

【问题讨论】:

  • 浏览器的 JavaScript 控制台中是否有任何相关的输出或日​​志消息?

标签: python-2.7 data-visualization bokeh


【解决方案1】:

我无法在带有 Bokeh 0.12.3 的 Python 3.4 上复制它。所以这样,你的代码看起来不错。我在笔记本(output_notebook)和像你一样的文件中都试过了,看起来都很好。

您指定的半径 1.5 采用数据单元(显然是 x),这使得圆圈非常大,在第一次渲染时覆盖了整个屏幕。但是使用滚轮缩放缩小一点会按预期显示所有圆圈。以下是我在 Firefox 中的代码(缩小后):

【讨论】:

  • 内存有问题吗?它不会在我的 6GB RAM 系统上呈现
  • color_scatter.py 的 4000 个圆圈的整个输出约为 1Mb,因此除非您的数据集有数十亿行(在这种情况下您需要查看类似 bokeh/datashader 的内容),否则这不太可能发生跨度>
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-22
  • 1970-01-01
  • 2017-12-31
  • 2020-01-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多