Боке: сетка графиков и соотношение сторон - PullRequest
0 голосов
/ 17 декабря 2018

Я пытаюсь сделать из сетки изображение и линейные графики, но первый график изображения растягивается по горизонтали, по-видимому, из-за ширины, взятой метками оси Y линейного графика во второй строке.

Есть ли способ предотвратить это?

# create an array of RGBA data
N = 20
img = np.empty((N, N), dtype=np.uint32)
view = img.view(dtype=np.uint8).reshape((N, N, 4))
for i in range(N):
    for j in range(N):
        view[i, j, 0] = int(255 * i / N)
        view[i, j, 1] = 158
        view[i, j, 2] = int(255 * j / N)
        view[i, j, 3] = 255

#output_file("grid.html", )

p = figure(plot_width=200, plot_height=200, x_range=(0, 10), y_range=(0, 10))
p.image_rgba(image=[img], x=[0], y=[0], dw=[10], dh=[10])

p2 = figure(plot_width=200, plot_height=200, x_range=(0, 10), y_range=(0, 10))
p2.image_rgba(image=[img], x=[0], y=[0], dw=[10], dh=[10])

p3 = figure(plot_width=400, plot_height=200)
p3.line([1, 2, 3, 4, 5], np.array([6, 7, 2, 4, 5])*10000, line_width=2)
p3.xaxis.axis_label = f'Wavelength'
p3.yaxis.axis_label = f'Flux'

l = gridplot([
    [p, p2],
    [p3]
], sizing_mode='fixed')

show(l)

enter image description here

1 Ответ

0 голосов
/ 17 декабря 2018

Начиная с Bokeh 1.0.2, нет прямого способа контролировать размеры внутренней рамки.Существует текущий запрос извлечения WIP для добавления этой и других возможностей, которые появятся в версии 1.1.

В то же время вы можете:

  • контролировать общую ширину / высоту холста с помощью plot_width и plot_height
  • контролировать минимальное заполнение вокругвнутренняя от с помощью min_border, min_border_left и т. д.
  • контролирует экстент тиков оси, управляя их вращением, форматированием или расположением

Итак, если вы контролируете тики(и учитывайте любой размер цветовой шкалы и т. д.) и устанавливая соответствующие значения min_border, которые не будут превышены, вы можете эффективно контролировать размеры кадра косвенно.Я отмечаю, что это далеко от идеала, и с нетерпением жду прибытия макета PR

...