簡體   English   中英

bokeh.charts.Area中的日期時間x軸

[英]Datetime x axis in bokeh.charts.Area

為什么我將datetime序列繪制為x軸來繪制數據,為什么將其解釋為datetime值,但是卻使用了錯誤的值:我的2016年時間被解釋為1970-1-1之后的毫秒數。 碼:

from __future__ import absolute_import, division, print_function
from __future__ import unicode_literals

from datetime import datetime
import pandas as pd
from bokeh.charts import Area, show, output_file

df = pd.DataFrame()
df['date'] = [datetime(2016, 1, 1), datetime(2016, 1, 2), datetime(2016, 1, 3)]
df['v1'] = [1, 2, 3]
df['v2'] = [4, 4, 3]

p = Area(df, x='date', y=['v1', 'v2'], title="Area Chart",
         legend="top_left", xscale='datetime', stack=True,
         xlabel='time', ylabel='values')

output_file("area.html", title="Area Chart")
show(p)

面積圖屏幕截圖

有沒有一種方法可以使bokeh.charts.Area識別我的datetime數據,還是我必須使用figure()自己構造figure()

附加數據:Python 2.7上的bokeh 0.11.1

問題是from __future__ import unicode語句。*刪除該行可解決此問題。

核心問題是x='date'關鍵字參數必須為字節。 否則,bokeh將無法在數據框中找到關鍵幀。 在這種情況下,它不會顯示警告或錯誤,它只是用數字索引(0,1,2,3)靜默替換它,日期索引將其解釋為毫秒。


*排除在原始問題之外,因為在與剩余的.egg-info目錄有些混淆之后,同樣的問題也浮出水面。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM