HoverTool是Bokeh中的一個工具,用于在鼠標懸停時顯示數據點的信息。要使用HoverTool,首先需要導入HoverTool類,然后將其添加到圖形對象的tools屬性中。接下來,可以通過傳遞一個Tooltip對象來自定義懸停時顯示的內容。
下面是一個示例代碼,演示了如何使用HoverTool并自定義顯示內容:
from bokeh.plotting import figure, show
from bokeh.models import HoverTool, ColumnDataSource
# 創建一個數據源
data = {'x': [1, 2, 3, 4, 5],
'y': [6, 7, 2, 4, 5],
'label': ['A', 'B', 'C', 'D', 'E']}
source = ColumnDataSource(data)
# 創建一個圖形對象
p = figure(x_axis_label='X', y_axis_label='Y')
# 繪制散點圖
p.circle(x='x', y='y', size=10, source=source)
# 創建一個HoverTool,并設置顯示內容
hover = HoverTool(tooltips=[('Label', '@label'), ('Value', '($x, $y)')])
p.add_tools(hover)
# 顯示圖形
show(p)
在上面的代碼中,我們首先創建了一個數據源,并使用ColumnDataSource將數據傳遞給圖形對象。然后創建一個散點圖,并使用HoverTool設置了懸停時顯示的內容,包括’label’和’($x, $y)'。最后將HoverTool添加到圖形對象中,并顯示圖形。
當懸停在散點上時,將顯示對應數據點的’label’和坐標值。可以根據實際需求自定義顯示內容,比如添加更多的字段或格式化數據。