2016-07-10 10 views
6

मैं डेटासेट से चार्ट उत्पन्न करने के लिए Bokeh Application ('एकल मॉड्यूल प्रारूप' में) उदाहरण का प्रयास कर रहा हूं। दिए गए उदाहरण में, वेब पेज पर उपयोगकर्ता एक बटन पर क्लिक कर सकता है और चार्ट नवीनतम डेटा के साथ अपडेट हो जाएगा। मैं यह समझने की कोशिश कर रहा हूं कि उपयोगकर्ता को बटन पर क्लिक करने की आवश्यकता के बिना मैं वही व्यवहार कैसे प्राप्त कर सकता हूं। यही है, मैं चार्ट को उपयोगकर्ता इंटरैक्शन की आवश्यकता के बिना निर्दिष्ट अंतराल पर स्वचालित रूप से अपडेट/रीफ्रेश/पुनः लोड करना चाहता हूं। आदर्श रूप से, मुझे इसे पूरा करने के लिए केवल myapp.py में कुछ बदलना होगा।बोके: स्वचालित रूप से रीफ्रेशिंग बोके प्लॉट्स

बोके संस्करण 0.12.0 है।

डेमो यहाँ सुविधा के लिए कॉपी कोड:

# myapp.py 

import numpy as np 

from bokeh.layouts import column 
from bokeh.models import Button 
from bokeh.palettes import RdYlBu3 
from bokeh.plotting import figure, curdoc 

# create a plot and style its properties 
p = figure(x_range=(0, 100), y_range=(0, 100), toolbar_location=None) 
p.border_fill_color = 'black' 
p.background_fill_color = 'black' 
p.outline_line_color = None 
p.grid.grid_line_color = None 

# add a text renderer to out plot (no data yet) 
r = p.text(x=[], y=[], text=[], text_color=[], text_font_size="20pt", 
      text_baseline="middle", text_align="center") 

i = 0 

ds = r.data_source 

# create a callback that will add a number in a random location 
def callback(): 
    global i 
    ds.data['x'].append(np.random.random()*70 + 15) 
    ds.data['y'].append(np.random.random()*70 + 15) 
    ds.data['text_color'].append(RdYlBu3[i%3]) 
    ds.data['text'].append(str(i)) 
    ds.trigger('data', ds.data, ds.data) 
    i = i + 1 

# add a button widget and configure with the call back 
button = Button(label="Press Me") 
button.on_click(callback) 

# put the button and plot in a layout and add to the document 
curdoc().add_root(column(button, p)) 

उत्तर

10

बदल जाता है वहाँ दस्तावेज़ वस्तु में एक विधि है बाहर:

add_periodic_callback(callback, period_milliseconds)

सुनिश्चित नहीं हैं कि क्यों इस एपीआई के बाहर का उल्लेख नहीं है। ..

संबंधित मुद्दे