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