2014-10-08 21 views
18

Có ai biết cách mang huyền thoại trong bokeh bên ngoài của biểu đồ không? Các thao tác duy nhất tôi có thể làm là chọn một vị trí trong:Vị trí của chú giải trong một âm mưu Bokeh

top_right, top_left, bottom_left or bottom_right 

sử dụng:

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

và khi tôi thử cái khác nhau tôi nhận được thông báo lỗi:

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

Một câu hỏi khác liên quan chặt chẽ đến điều này: làm thế nào để giữ tỷ lệ khung hình của các trục gốc? –

Trả lời

11

Tính Bokeh 0.12.4 có thể đặt các truyền thuyết bên ngoài khu vực âm mưu trung tâm. Dưới đây là một ví dụ ngắn from the user's guide:

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) 

Để điều chỉnh vị trí, thay đổi dxdy trong location=(dx, dy).

enter image description here

+0

Tôi sẽ làm như thế nào khi sử dụng API biểu đồ? – kynan

+0

Nó sẽ yêu cầu di chuyển vị trí bố trí, mà không phải là tầm thường để làm vào lúc này. Tôi muốn đề nghị đưa loại câu hỏi đó vào danh sách gửi thư, bởi vì nó có thể mất một số thử nghiệm và thảo luận qua lại để tìm ra. – bigreddot

+0

Tôi đã [nộp một vấn đề cho tính năng đó] (https://github.com/bokeh/bokeh/issues/4941). – kynan

Các vấn đề liên quan