2016-06-09 53 views
2

如果我有一個簡單的Python時數據序列是這樣的:燒瓶到Dygraph - 如何傳遞數據?

graphdata = [] 
graphdata.append([(datetime.date(2008, 5, 7)),75]) 
graphdata.append([(datetime.date(2008, 5, 8)), 85]) 
graphdata.append([(datetime.date(2008, 5, 10)), 60]) 

我如何將數據傳遞到運行Dygraph燒瓶頁?

我需要使用GViz嗎?

任何示例都會有所幫助。

感謝 比爾

回答

0

無需通過數據包含datetime對象的列表。 Dygraphs輕鬆讀取CSV格式。所以只需將數據作爲一個長CSV string傳遞。對於你的情況,首先制定包含您的數據字符串:

graphdata = '' 
graphdata = graphdata + '2008-05-07, 75\n' 
graphdata = graphdata + '2008-05-08, 85\n' 
graphdata = graphdata + '2008-05-10, 60\n' 

現在,讓我們說這一點,你希望呈現您的index頁面上這個數據,那麼這樣做在你的views.py

@app.route('/') 
def index(): 
    return render_template('index.html',graphdata) 

最後,這一數據是由您index.html接收並呈現使用下面的代碼:

<div id="graphdiv"></div> 
<script type="text/javascript"> 
    g = new Dygraph(

    // containing div 
    document.getElementById("graphdiv"), 

    // CSV or path to a CSV file. 
    {{ graphdata }} 

); 
</script> 

確保dygraph.js包含在您的Flask應用程序中。