2017-09-27 16 views
0

私はperiodic_callbackを使いこなしており、エラーを投げかけています。しかし、私は本当になぜ理解していないのですか?すべてのコードは一部のコンテキストを単独で動作し、できるだけ早く私がボケサーバを使用して更新機能に追加するとエラーがスローされます...定期的なコールバックを使用した場合のBokehエラー

私は以下のコードを添付しました - 主な機能は、作りますGoogleアナリティクスへのAPIコールは、毎日アクティブなユーザー(時間と番号)を取得します。これは、Bokeh関数の外部で正しく動作します。このデータは、データフレームに入力され、プロッティングのための適切な形式にするためにいくつかの操作が実行されます。 Bokehストリーム関数は、現在の列データソースをただ更新するために使用されます。私は、関数を実行すると

は残念ながら、私は次のエラーを取得する:

Error thrown from periodic callback: AttributeError("'ColumnDataSource' object has no attribute 'keys'",) 

は、私は、ファイルやディレクトリにアクセスしようとしていないよとき、これはでも、何を意味するのか見当がつかない?

機能:事前に

def update(): 

    t = main() 
    DAU = pd.DataFrame(t['rows'], columns=['Date', 'Vol']) 
    DAU['Date'] = pd.to_datetime(DAU['Date']) 
    DAU['Vol'] = DAU.Vol.astype(int) 

    new = ColumnDataSource(DAU) 

source.stream(new) 

source = ColumnDataSource({'Date': [], 'Vol': []}) 

p1 = figure(toolbar_location=None, x_axis_type='datetime') 
p1.border_fill_color = 'black' 
p1.background_fill_color = 'black' 
p1.outline_line_color = None 
p1.grid.grid_line_color = None 

r1 = p1.line('Date', 'Vol', color="navy", line_width=4, source=source) 

curdoc().add_periodic_callback(update, 50) 

curdoc().add_root(p1) 

ありがとう!

答えて

0

stream方法takes a dict as argument、それが故に、あなたのColumnDataSourceオブジェクトのエラーでdictkeys()方法を探しています。

関連する問題