Python,Bokeh日期时间图表-空白输出

Python,Bokeh日期时间图表-空白输出,python,pandas,bokeh,categorical-data,Python,Pandas,Bokeh,Categorical Data,问题 我试图创建一个图表,显示沿时间线的许多“事件”。例如,2018年1月1日记录了一次伤害。我希望能够记录一系列不同类别的此类信息。然而,我目前的尝试只是创建一个空白图表——所以我假设我在某个地方把事情搞砸了,我会喜欢一些指针 代码 from bokeh.plotting import figure from bokeh.io import output_file, show, save import pandas from bokeh.models import ColumnDataSour

问题

我试图创建一个图表,显示沿时间线的许多“事件”。例如,2018年1月1日记录了一次伤害。我希望能够记录一系列不同类别的此类信息。然而,我目前的尝试只是创建一个空白图表——所以我假设我在某个地方把事情搞砸了,我会喜欢一些指针

代码

from bokeh.plotting import figure
from bokeh.io import output_file, show, save
import pandas
from bokeh.models import ColumnDataSource

# output file 
output_file=("justanotheroutput.html")

# constants
CATEGORIES = ['bed', 'injury', 'incident']

# get data source
df=pandas.read_csv("data.csv")
source = ColumnDataSource(df)

# create figure
f=figure(y_range=CATEGORIES, x_axis_type='datetime')

# create glyph
f.circle(x='date', y='category', source=source)

show(f)
我的虚拟数据

我的当前输出


对于日期时间轴,Bokeh希望坐标值为实时日期时间类型。有多种方法可以实现这一点,但最简单的方法可能是告诉Pandas应该将哪个列视为datetime。以下是一个基于您的数据子集的完整示例(仅供参考的数据图像在提问中远不如包含真实数据有用):


对于日期时间轴,Bokeh希望坐标值为实时日期时间类型。有多种方法可以实现这一点,但最简单的方法可能是告诉Pandas应该将哪个列视为datetime。以下是一个基于您的数据子集的完整示例(仅供参考的数据图像在提问中远不如包含真实数据有用):


这些日期是实际的日期时间值还是字符串?我想它们应该是字符串——我刚刚用Excel创建了一个CSV文件,作为一些虚拟数据。我不知道有一个特殊的区别:那些日期是实际的日期时间值,还是字符串?我猜它们应该是字符串——我只是用Excel创建了一个CSV文件作为一些虚拟数据。我不知道有什么特别的区别:谢谢你这个偏执狂。你是一个天才的救星:)我迫不及待地想学习到足够的知识来为堆栈溢出做出贡献:)我很高兴它能工作,仅供参考,我已经更新了标题,以反映这个问题最终是关于DateTimes的好主意。在我的无知中,我只是尽可能地描述:谢谢你这个偏执狂。你是一个天才的救星:)我迫不及待地想学习到足够的知识来为堆栈溢出做出贡献:)我很高兴它能工作,仅供参考,我已经更新了标题,以反映这个问题最终是关于DateTimes的好主意。在我的无知中,我只是尽可能地描述:D
import pandas as pd
from bokeh.plotting import figure, show

CATEGORIES = ['bed', 'injury', 'incident']

# use parse_dates to tell pandas which cols are datetimes
df = pd.read_csv("data.csv", parse_dates=['date'])

f = figure(y_range=CATEGORIES, x_axis_type='datetime')
f.circle(x='date', y='category', size=20, source=df)

show(f)