如何使用Bokeh在Holoview上将文本旋转为水平

时间:2018-09-16 17:54:13

标签: bokeh holoviews

https://holoviews.org/gallery/demos/bokeh/route_chord.html中的示例中, 如何将弧标的方向更改为水平?不重叠的奖励积分-或使用单独的图例代替

1 个答案:

答案 0 :(得分:2)

来自gitter的@philippjfr的答案是:

# %%opts Chord [edge_color_index='SourceID' label_index='City' color_index='AirportID' width=800 height=800]
# %%opts Chord (cmap='Category20' edge_cmap='Category20')

def rotate_label(plot, element):
    text_cds = plot.handles['text_1_source']
    length = len(text_cds.data['angle'])
    text_cds.data['angle'] = [0]*length
    xs = text_cds.data['x']
    text = np.array(text_cds.data['text'])
    xs[xs<0] -= np.array([len(t)*0.019 for t in text[xs<0]])

busiest_airports.options(
    edge_color_index='SourceID', label_index='City', color_index='AirportID',
    width=800, height=800, finalize_hooks=[rotate_label], cmap='Category20',
    edge_cmap='Category20'
)