2

我想在散景中制作一个集群风格的树状图。我喜欢这个散景点图示例,但我想让线条弯曲并显示这样的集群结构:http: //bl.ocks.org/mbostock/4063570

这是散景示例中点图的代码:

import numpy as np
from bokeh.plotting import *
from bokeh.objects import Range1d

N = 4000

factors = ["a", "b", "c", "d", "e", "f", "g", "h"]
x0 = [0,0,0,0,0,0,0,0]
x =  [50, 40, 65, 10, 25, 37, 80, 60]

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

hold()

segment(x0, factors, x, factors, y_range=factors, x_range=Range1d(start=0, end=100), 
        line_width=2, line_color="green", tools="resize,previewsave", title="Dot Plot")
circle(x, factors, size=15, fill_color="orange", line_color="green", line_width=3, Name="categorical example")

figure()

show()  # open a browser

这是散景点图的输出

关于如何使线条弯曲并显示树状图中的聚类关系的任何建议。显示此图片只是为了显示带点的直线的想法。实际目标是显示来自单点的所有线的聚类关系。

4

2 回答 2

3

同时(四年后,2018-08)我们运行 Bokeh 0.13.0。由于上面的答案并不令人满意,我想向您指出两个基于散景的树状图实现。

Daniel Russo 基于量化数据的散景树状图实现: https ://russodanielp.github.io/plotting-a-heatmap-with-a-dendrogram-using-bokeh.html

cdendro,bokehheat 库的基于分类数据的散景树状图实现:https ://gitlab.com/biotransistor/bokehheat

于 2018-08-29T20:11:32.650 回答
1

这不是不可能在 Bokeh 中渲染的(从 0.4.4 开始),但是还没有内置的支持来帮助图形和图形布局。您必须计算或使用库来计算边缘的线点等,然后将它们传递给 Bokeh。图形支持在我们的路线图上,但可能要到今年晚些时候才会支持,除非我们放弃了完整的 PR。

于 2014-05-11T09:00:53.390 回答