散景图没有显示

时间:2016-11-23 23:00:57

标签: python-2.7 data-visualization bokeh

我是python的新手。我尝试使用我自己的数据集http://bokeh.pydata.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)

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

1 个答案:

答案 0 :(得分:0)

我无法使用Bokeh 0.12.3在Python 3.4上复制此内容。所以这样,你的代码看起来很好。我在笔记本(output_notebook)和像你这样的文件中都尝试了它,两者似乎都运行正常。

您指定的半径1.5以数据单位(显然为x)获取,这使得圆圈非常大,在第一次渲染时覆盖整个屏幕。但是使用wheelzoom缩小一点可以显示所有圆圈。以下是我的代码在Firefox中的代码(缩小后):

enter image description here