Python 散景工具提示文本格式
Python Bokeh tooltip text formatting
参考指南中的工具提示示例显示了以下格式示例:
hover.tooltips = [
("index", "$index"),
("(x,y)", "($x, $y)"),
("radius", "@radius"),
("fill color", "$color[hex, swatch]:fill_color"),
("foo", "@foo"),
("bar", "@bar"),
("baz", "@baz{safe}"),
("total", "@total{[=11=],0.00}"
3 个示例 {safe}
、{[=13=],0.00}
和 "$color[hex, swatch]:fill_color"
不清楚:我在哪里可以找到它们的一些文档?
基本上我想了解什么是可能的,什么不是。
目前(例如)我有 1 个输入,我们输入了一个很长的字符串(它是一篇报纸文章),我想对其进行格式化,以便它只显示第 x 个字符。
其他示例我有一个字段 @datetime
从日期时间索引中检索其值。目前,工具提示将该值显示为 int64
字符。如何使用格式化工具,例如Timestamp.strftime("%d-%m-%Y")
,以便它以人类可读的格式显示日期时间?
但我想更清楚地了解什么是 possible/how 散景的那个方面
自最初发布此答案以来,Bokeh 已投入新工作以简化操作。日期时间字段可以通过悬停工具直接格式化为日期时间,方法是指定格式化程序,例如:
HoverTool(tooltips=[('label', '@datetime{%F}')],
formatters={'datetime': 'datetime'})
不再需要像下面那样预先格式化数据源中的日期字段(尽管它肯定仍然有效)。有关详细信息,请参阅 Formatting Tooltip Fields
旧答案:
这仍然是该项目的未解决问题:
https://github.com/bokeh/bokeh/issues/1239
但是,考虑到最近的一些其他工作,现在应该很容易以自然的方式实现此功能。我已经为下一个 0.12.6
里程碑安排了任务。
此外,尽管 Bokeh 拥有广泛而丰富的文档,但偶尔也会出现一些空白。不幸的是,这恰好是其中之一。我注意到有一个未解决的问题可以改进这一点:
https://github.com/bokeh/bokeh/issues/2595
我更新了它以确保它也包含在 0.12.6
里程碑中。
与此同时,您最好的选择是按照您希望数据显示在 Python 的工具提示中的方式预先设置数据格式。然后向具有格式化版本的数据源添加一列,配置悬停工具以显示此列:
source.data['formatted_date'] = my_pretty_print(source.date['date'])
hover.tooltips = [ ("date", "@formatted_date") ]
参考指南中的工具提示示例显示了以下格式示例:
hover.tooltips = [
("index", "$index"),
("(x,y)", "($x, $y)"),
("radius", "@radius"),
("fill color", "$color[hex, swatch]:fill_color"),
("foo", "@foo"),
("bar", "@bar"),
("baz", "@baz{safe}"),
("total", "@total{[=11=],0.00}"
3 个示例 {safe}
、{[=13=],0.00}
和 "$color[hex, swatch]:fill_color"
不清楚:我在哪里可以找到它们的一些文档?
基本上我想了解什么是可能的,什么不是。
目前(例如)我有 1 个输入,我们输入了一个很长的字符串(它是一篇报纸文章),我想对其进行格式化,以便它只显示第 x 个字符。
其他示例我有一个字段 @datetime
从日期时间索引中检索其值。目前,工具提示将该值显示为 int64
字符。如何使用格式化工具,例如Timestamp.strftime("%d-%m-%Y")
,以便它以人类可读的格式显示日期时间?
但我想更清楚地了解什么是 possible/how 散景的那个方面
自最初发布此答案以来,Bokeh 已投入新工作以简化操作。日期时间字段可以通过悬停工具直接格式化为日期时间,方法是指定格式化程序,例如:
HoverTool(tooltips=[('label', '@datetime{%F}')],
formatters={'datetime': 'datetime'})
不再需要像下面那样预先格式化数据源中的日期字段(尽管它肯定仍然有效)。有关详细信息,请参阅 Formatting Tooltip Fields
旧答案:
这仍然是该项目的未解决问题:
https://github.com/bokeh/bokeh/issues/1239
但是,考虑到最近的一些其他工作,现在应该很容易以自然的方式实现此功能。我已经为下一个 0.12.6
里程碑安排了任务。
此外,尽管 Bokeh 拥有广泛而丰富的文档,但偶尔也会出现一些空白。不幸的是,这恰好是其中之一。我注意到有一个未解决的问题可以改进这一点:
https://github.com/bokeh/bokeh/issues/2595
我更新了它以确保它也包含在 0.12.6
里程碑中。
与此同时,您最好的选择是按照您希望数据显示在 Python 的工具提示中的方式预先设置数据格式。然后向具有格式化版本的数据源添加一列,配置悬停工具以显示此列:
source.data['formatted_date'] = my_pretty_print(source.date['date'])
hover.tooltips = [ ("date", "@formatted_date") ]