我正在遵循不同的代码来了解如何在x轴上显示不同的日期时间格式,但出于某种原因,无论我放入mmmyy
,轴都始终采用Jan17
格式DatetimeTickFormatter
{1}}。如何更改格式,例如Jan 15, 2017
?
p=figure(plot_width=800,plot_height=500)
p.line(x="ENTRYDATE",y="Transactions",color='LightSlateGrey', source=sourceDay)
p.xaxis.major_label_orientation=1.5
p.xaxis.formatter=DatetimeTickFormatter(days=["%a\n%d %b"])
ColumnDataSource
的格式为:
ENTRYDATE | Transactions
2017-01-15 29
2017-01-20 30
..
2018-01-03 1
其中ENTRYDATE
是datetime
个对象。提前谢谢。
答案 0 :(得分:1)
我无法重现您的问题。对我来说,以下基于代码的示例有效:
from bokeh.plotting import figure
from bokeh.models.sources import ColumnDataSource
from bokeh.models.formatters import DatetimeTickFormatter
import bokeh.io as bkio
import datetime as dt
date1 = dt.datetime(2017, 1, 15)
date2 = dt.datetime(2017, 1, 20)
sourceDay = ColumnDataSource(data=dict(ENTRYDATE=[date1, date2], Transactions = [1, 2]))
p=figure(plot_width=800,plot_height=500)
p.line(x="ENTRYDATE",y="Transactions",color='LightSlateGrey', source=sourceDay)
p.xaxis.major_label_orientation=1.5
p.xaxis.formatter=DatetimeTickFormatter(days=["%b %d, %Y"])
bkio.show(p)
您确定数据源的ENTRYDATE列中的datetime对象吗?