2017-01-16 5 views
0

Я планирую участок Bokeh с осью X datetime. При добавлении аннотации к сюжету я замечаю, что время составляет один час. Я подозреваю, что это связано с тем, что я находился в часовой пояс UTC + 1, хотя это может быть и разница в индексировании +1.Аннотации участка временного цикла Bokeh отключены на 1 час

Код для воспроизведения:

xrange = pandas.date_range('1/1/2011', periods=12, freq='H') 
event = pandas.Timestamp('1/1/2011 05:00:00') 
data = pandas.Series([1]*12, index=xrange) 
data[event] = 3 

plot = bokeh.plotting.figure(x_axis_type="datetime") 
plot.line(data.index, data) 

time = event.timestamp()*1000 
spanannotation = bokeh.models.Span(location=time, dimension="height",line_color="red") 

plot.renderers.append(spanannotation) 
bokeh.plotting.show(plot) 

Выход: BokehData.png BokehPlot.png

Как я могу получить аннотацию отображаться в нужное время?

EDIT: это определенно связано с часовым поясом, потому что, когда я меняю свой часовой пояс системы на UTC + 2, смещение составляет 2 часа.

ответ

0

Это этот вопрос https://github.com/bokeh/bokeh/issues/5499

Bokeh будет рассматривать ваши объекты даты-времени как системы местного времени. Вы можете предотвратить его с теми линиями в начале вашего кода, чтобы ваше системное время было в UTC + 0:

import os 
import time  

os.environ['TZ'] = 'UTC+0' 
time.tzset() 
Смежные вопросы