首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Python Bokeh工具提示文本格式

Python Bokeh工具提示文本格式
EN

Stack Overflow用户
提问于 2017-04-14 02:10:32
回答 1查看 4.8K关注 0票数 5

参考手册中提供的工具提示示例显示了以下格式设置示例:

代码语言:javascript
复制
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{$0,0.00}"

{safe}{$0,0.00}"$color[hex, swatch]:fill_color"这3个示例并不清楚:我在哪里可以找到关于它们的文档?

基本上,我想了解什么是可能的,什么是不可能的。

现在(例如)我有一个输入,告诉我们一个非常长的字符串(这是一篇报纸文章),我想格式化,这样它只显示x个前几个字符。

另一个例子是,我有一个字段@datetime,它从datetime索引中检索其值。此时,工具提示将该值显示为int64字符。如何使用诸如 Timestamp.strftime("%d-%m-%Y") 之类的格式化工具,使其以人类可读的格式显示日期时间?

但我想对bokeh的可能性/如何工作有一个更清晰的概述。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-14 07:00:30

自从这个答案最初发布以来,Bokeh已经进行了新的工作,以使事情变得更简单。通过指定格式化程序,可以通过悬停工具直接将日期时间字段格式化为日期时间,例如:

代码语言:javascript
复制
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的工具提示中。然后向具有格式化版本的数据源添加一列,即配置悬停工具以显示此列:

代码语言:javascript
复制
source.data['formatted_date'] = my_pretty_print(source.date['date'])

hover.tooltips = [ ("date", "@formatted_date") ]    
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43399057

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档