web-dev-qa-db-ja.com

ボケプロットでの凡例の位置

誰かが凡例をグラフのボケ-外側で運ぶ方法を知っていますか?私ができる唯一の操作は、次の中からポジションを選択することでした。

top_right, top_left, bottom_left or bottom_right

使用:

legend()[0].orientation = "bottom_left"

私が別のものを試してみると、エラーメッセージが表示されます:

ValueError: invalid value for orientation: 'outside'; allowed values are top_right, top_left, bottom_left or bottom_right
20
MajorYel

Bokeh _0.12.4_以降、凡例を中央のプロットエリアの外側に配置することができます。以下に短い例を示します ユーザーガイドから

_import numpy as np
from bokeh.models import Legend
from bokeh.plotting import figure, show, output_file

x = np.linspace(0, 4*np.pi, 100)
y = np.sin(x)

output_file("legend_labels.html")

p = figure(toolbar_location="above")

r0 = p.circle(x, y)
r1 = p.line(x, y)

r2 = p.line(x, 2*y, line_dash=[4, 4], line_color="orange", line_width=2)

r3 = p.square(x, 3*y, fill_color=None, line_color="green")
r4 = p.line(x, 3*y, line_color="green")

legend = Legend(items=[
    ("sin(x)",   [r0, r1]),
    ("2*sin(x)", [r2]),
    ("3*sin(x)", [r3, r4])
], location=(0, -30))

p.add_layout(legend, 'right')

show(p)
_

位置を調整するには、location=(dx, dy)dxdyを変更します。

enter image description here

17
bigreddot