如何在烧瓶

时间:2016-05-17 03:18:06

标签: javascript python svg flask

我正在尝试用烧瓶上的pygal制作自动填充图,我在Javascript中尝试了jQuery中的setInterval并且文本值正确刷新,但仍然无法对图进行自动刷新。以下是我的消息来源:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type=text/javascript>
setInterval(
  function()
      {
      $.getJSON(
      '/_data',
      {},
      function(data)
      {
      $("#x-value").text('X: '+data.xval);
      $("#y-value").text('Y: '+data.yval);
      $("#z-value").text('Z: '+data.zval);
      $("#chart").text(data.chart)
      });
      },
  500); 
</script>
...
<div id=x-value>X</div>
            <div id=y-value>Y</div>
            <div id=z-value>Z</div>
        </div>

        <div class="col-lg-6">
             <object id="chart" type="image/svg+xml"></object>
        </div>

我尝试了很多&#34;对象&#34;和div标签,nothings的工作.. 这是我的python:

def data():
    data = get_last()
    charts = chart()
    return jsonify(xval=data['X'],
                   yval=data['Y'],
                   zval=data['Z'],
                   chart=charts)

def chart():
    data = get_last_hun()
    chart = line_route(data)
    return chart

def get_last():
    vals = db.get_last()
    return vals

def get_last_hun():
    arr = {'X':[],'Y':[],'Z':[]}
    latest = db.get_last()['id']
    start = 1
    if latest > 100:
        start = latest-100
    while start<=latest:
        arr['X'].append(db.get_val(start)['X'])
        arr['Y'].append(db.get_val(start)['Y'])
        arr['Z'].append(db.get_val(start)['Z'])
        start = start + 1
    return arr

def line_route(data):
    chart = pygal.Line()
    chart.add('X', data['X'])
    chart.add('Y', data['Y'])
    chart.add('Z', data['Z'])
    chart.render(is_unicode=True)
    return render_template('home.html',chart = chart)

您知道其他可能的方法吗?

非常感谢!

0 个答案:

没有答案