我正在尝试将工具提示格式化为“月年”格式,但似乎不起作用?
这是我的代码:
import numpy as np # linear algebra
import pandas as pd
from bokeh.plotting import figure, show, output_file, output_notebook
from bokeh.palettes import Spectral11, colorblind, Inferno, BuGn, brewer
from bokeh.models import HoverTool, value, LabelSet, Legend, ColumnDataSource,LinearColorMapper,BasicTicker, PrintfTickFormatter, ColorBar
import datetime
from bokeh.models import DatetimeTickFormatter
TOOLS = "hover,save,pan,box_zoom,reset,wheel_zoom,tap"
p = figure(title="Total Workplace Incidents", x_axis_type="datetime", y_axis_type="linear", plot_height = 400,
tools = TOOLS, plot_width = 800)
p.xaxis.axis_label = 'Month/Year'
p.yaxis.axis_label = 'Number of Incidents'
p.line(g['Date'], g['ISMS\nReport#'],line_color="blue", line_width = 3)
p.xaxis.formatter=DatetimeTickFormatter(
days= ["%b %y"],
months=["%b %y"],
years=["%b %y"]
)
p.select_one(HoverTool).tooltips = [
('Month/Year', '@x {%b %y}'),
('Number of Incidents', '@y'),
]
output_file("test.html", title="Line Chart")
show(p)
请多多指教吗?谢谢。
看起来您只需要两件事:
@x
和格式{%b, %y}
之间的空格x
是日期时间的格式化程序p.select_one(HoverTool).tooltips = [
('Month/Year', '@x{%b %y}'),
('Number of Incidents', '@y'),
]
p.select_one(HoverTool).formatters = {'x':'datetime'}