Position de la légende dans une parcelle de Bokeh
personne Ne sait comment effectuer la légende dans le bokeh dehors du graphique? La seule manipulation que je pouvais faire était de choisir une position parmi:
top_right, top_left, bottom_left or bottom_right
utilisation:
legend()[0].orientation = "bottom_left"
et quand j'essaie différents de ceux que je reçois le message d'erreur:
ValueError: invalid value for orientation: 'outside'; allowed values are top_right, top_left, bottom_left or bottom_right
19
demandé sur
user1251007
2014-10-08 14:25:58
1 réponses
à partir de Bokeh 0.12.4
il est possible de placer des légendes en dehors de la zone centrale de la parcelle. Voici une courte exemple dans le guide de l'utilisateur:
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)
Pour ajuster la position, changer dx
et dy
location=(dx, dy)
.
14
répondu
bigreddot
2017-03-28 01:36:24