В Bokeh 1.4.0 `xaxis.major_label_text_align` выглядит неработающим - PullRequest
1 голос
/ 12 февраля 2020

Я хотел бы выровнять метки тика оси X на одной стороне тиков или на другой, чтобы было менее запутанным, какой день соответствует интервалу данных. Центрирование даты в полночь выглядит неправильно. xaxis.major_label_text_align, кажется, ничего не делает. Предполагается, что в качестве опций будут выбраны значения right, left и center. Я правильно его использую? Я не могу найти никаких рабочих примеров. Разве это еще не реализовано? Использование этого не дает предупреждение. Есть ли какие-либо обходные пути, чтобы печатать дату после отметки, которая обозначает полночь? К вашему сведению: я не могу заставить метки галочек выравнивать метки, не относящиеся к дате.

from bokeh.plotting import figure
from bokeh.io import show, output_notebook
from bokeh.models.formatters import DatetimeTickFormatter
import datetime
import random

DTF =  DatetimeTickFormatter()
DTF.days = ["%A"]

p = figure(plot_width=400, plot_height=200)

p.xaxis.formatter = DTF
p.xaxis.major_label_text_align='left' # <== THIS APPEARS TO DO NOTHING

base = datetime.datetime.today()
x = [base + datetime.timedelta(days=x) for x in range(10)]
#x = [1000, 3000, 4000, 5000, 8000] # <-- same issue with non-datetime
y = [random.randint(0,10) for i in range(10)]

p.line(x, y)

output_notebook()
show(p)

enter image description here

1 Ответ

0 голосов
/ 13 февраля 2020

Это свойство используется технически в том смысле, что вся сантехника на месте, а контекст рисования холста HTML настроен с указанным вами значением. Но в практическом смысле это не переводит на что-либо полезное, из-за способа Bokeh dr aws text. Это выравнивание относится только к низкоуровневому блоку рисования, указанному для текста на холсте, и Bokeh всегда задает жесткую ограничивающую рамку (то есть весь текст всегда уже одновременно выровнен вправо, влево и по центру в этом параметре c смысл - именно поэтому изменение значения не имеет видимого эффекта).

Я бы предложил открыть вопрос GitHub , чтобы обсудить это. (Хотя разрешение может быть просто «избавиться от него».)

В качестве немедленного решения, вы можете попробовать указать angle для метки тика. Я вполне уверен, что вы можете повернуть к чему-то, что визуально неотличимо от горизонтали, но закреплено на конце.

...