Вы создали ось / диапазон с категориальными факторами, но задаете координаты круга как числа. Если вы хотите позиционировать глифы в соответствии с категориальными значениями, координаты должны отражать это:
data = [['VAL 1', 12],['VAL 2', 8]]
У меня разброс с категориальной осью х, но мои круги не совпадают с осью. Этот пример кода реплицирует проблему:
import pandas as pd
from bokeh.plotting import figure
from bokeh.io import output_file, show
from bokeh.models import ColumnDataSource, HoverTool
data = [[1,12],[2,8]]
x_axis_rng = ['VAL 1','VAL 2']
df = pd.DataFrame(data)
df.columns = ['x','y']
chart_data = ColumnDataSource(df)
print(chart_data)
plot = figure(title='Example',
x_axis_label='x',
y_axis_label='y',
x_range=x_axis_rng)
plot.circle('x',
'y',
size=10,
source=chart_data)
hover = HoverTool(tooltips=[('x', '@x'),('y', '@y')])
plot.add_tools(hover)
output_file('test.html')
show(plot)
Я читал о смещении оси x, но я не мог заставить это работать, и в этом случае не должно было возникнуть необходимость.
Любая помощь ценится!
обкрадывать