python - Bokeh 2.3.0:multi_line HoverTool 显示源数组而不是点坐标
问题描述
我有几个包含 X、Y 和日期值的数组,每个数组都是一行。我希望在悬停点时出现每个 X/Y/日期。对于我的项目,我确实需要使用散景 2.3.0multi_line
而不是多个。line
到目前为止,我已经像往常一样用线条、四边形等定义了工具提示……但是我在工具提示中得到的是构成每一行的数组(下面的图片和代码)。
下图中的预期工具提示将是 (xs:0, ys:1.47, color:green, date:2021-01-01) 而不是完整的数组。
有没有办法显示逐点值而不是每行的源数组?
import pandas as pd
import numpy as np
from bokeh.io import show
from bokeh.plotting import figure
from bokeh.models import ColumnDataSource, HoverTool
xs = [np.arange(0,10) for _ in range(3)]
ys = [(np.random.randn(10) + i).round(2) for i in range(3)]
dates = [pd.date_range("2021-01-01", "2021-01-10") for _ in range(3)]
colors = ["red", "blue", "green"]
source = ColumnDataSource(dict(xs=xs, ys=ys, dates=dates, colors=colors))
p = figure(plot_width=750, plot_height=300)
p.multi_line(xs="xs", ys="ys", color="colors", source=source)
p.add_tools(HoverTool(tooltips=[("xs","@xs"), ("ys","@ys"), ("color", "@colors"), ("date","@dates{%F}")]))
show(p)
解决方案
推荐阅读
- android - 如何通过 hid-usb 驱动旋转安卓触摸屏
- ruby-on-rails - Rails 5 - 检索 MiniMagick 版本的图像(CarrierWave/Google Cloud Storage)
- go - 证明在函数内部模拟函数返回
- java - Java Spring boot - OnceRequestPerFilter 只允许控制器请求映射
- python - 仅针对特定文件夹的图像数据生成器扩充参数 (Keras)
- zabbix - IBM DS5020 SNMP 监控
- sql-server - Authentication="Active Directory Integrated";` 试图以我的计算机而不是使用我的 Active Directory 帐户登录到 SQL Server?
- javascript - 如何从jquery中的动态下拉列表中选择多个值
- java - 如何从线程中获取要在父线程中使用的值?
- laravel - 用于清除 Laravel 中所有会话数据的 Artisan 命令