从`figure()`函数的外部设置python`flow`情节图的标题

时间:2017-12-09 22:38:39

标签: python bokeh

在python中使用public class Caller implements Comparable<Caller> { String name; public int compareTo(Caller other) { return name.compareTo(other.name); } } 绘图包时遇到了一个非常简单的问题。

我想从通常的图形构造函数外部设置散景图的标题,但是我得到一个奇怪的错误。

这是代码。

Collections.sort(callers);

但是当我尝试这段代码时,我收到一条错误消息:

bokeh

所以我似乎需要创建一个from bokeh.plotting import figure p = figure() p.title = 'new title' 对象或其他东西来传递给图。但是在散景documentation中没有提到如何设置标题。仅提及如何更改标题字体或标题颜色等。

有没有人知道如何设置通常ValueError: expected an instance of type Title, got new plot of type str

之外的情节标题

2 个答案:

答案 0 :(得分:10)

要简单地更改标题而无需构造新的Title对象,可以设置图形的title.text属性:

from bokeh.plotting import figure
p = figure()
p.title.text = 'New title'

答案 1 :(得分:5)

编辑:请注意,由于a known bug,此答案中的解决方案在散景服务器中不起作用。 This answer below会起作用,而且更加pythonic。

您必须将Title的实例分配给p.title。因为,我们可以使用函数type来研究python中的事物类型,弄清楚这些事情是相当简单的。

> type(p.title) 
bokeh.models.annotations.Title

以下是jupyter笔记本中的完整示例:

from bokeh.models.annotations import Title
from bokeh.plotting import figure, show
import numpy as np
from bokeh.io import output_notebook
output_notebook()
x = np.arange(0, 2*np.pi, np.pi/100)
y = np.sin(x)
p = figure()
p.circle(x, y)
t = Title()
t.text = 'new title'
p.title = t
show(p)

输出以下图表,标题设为new title

example output