2016-11-05 42 views
0

我想通過Flask渲染一個簡單的Highchart,一切正常,但它顯示了Y軸上的X軸,反之亦然!我想在X軸上有幾個月,在Y軸上有溫度。這是我得到的(見圖片)。有人知道我做錯了什麼嗎? enter image description here 這裏是我的代碼: app.py:Highcharts中的軸(Python/Flask)

from flask import Flask, render_template 
app = Flask(__name__) 

@app.route("/chart3/") 
def chart_3(): 
    chartID = 'chart_ID' 
    chart = {"renderTo": chartID, "type": 'bar', "height": 450} 
    title = {"text": 'Average Monthly Temperature'} 
    xAxis = {"categories": ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']} 
    yAxis = {"labels": {"format": '{value}°C'}, "title": {"text": 'Temperature'}} 
    series = [ {"name": 'City', "data": [1,2,3,4,5,6,7,80,9,10,11]} ] 
    return render_template("chart3.html", chartID=chartID, chart=chart, title=title, xAxis=xAxis, yAxis=yAxis, series=series) 

if __name__ == "__main__": 
    app.run() 

這裏是我的graph.js:

$(document).ready(function() { 
    $(chart_id).highcharts({ 
     chart: chart, 
     title: title, 
     xAxis: xAxis, 
     yAxis: yAxis, 
     series: series 
    }); 
}); 

這裏是我的chart3.html:

<!DOCTYPE html> 
<html lang="en"> 
    <head> 
     <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
     <meta name="description" content=""> 
     <meta name="keywords" content=""> 
     <meta name="author" content=""> 
     <meta charset="utf-8"> 
    </head> 

    <body> 
     <div id = {{ chartID|safe }} class="chart" style="height: 100px; width: 500px"></div> 
     <script> 
      var chart_id = {{ chartID|safe }} 
      var series = {{ series|safe }} 
      var title = {{ title|safe }} 
      var xAxis = {{ xAxis|safe }} 
      var yAxis = {{ yAxis|safe }} 
      var chart = {{ chart|safe }} 
     </script> 
     <script src="https://code.jquery.com/jquery-3.1.1.min.js" integrity="sha256-hVVnYaiADRTO2PzUGmuLJr8BLUSjGIZsDYGmIJLv2b8=" 
     crossorigin="anonymous"></script> 
     <script src="https://code.highcharts.com/highcharts.js"></script> 
     <script src="../static/js/graph.js"></script> 
    </body> 
</html> 

回答

3

我找到答案。圖表類型必須是column而不是bar。 對於大家誰正在努力同樣的問題,這裏是代碼:

圖表= { 「renderTo」:chartID, 「類型」:'列', 「高度」:450}