python - 通过python烧瓶将变量发送到javascript并使用谷歌图表显示条形图
问题描述
嘿,我正在尝试在我的 html 页面中制作条形图。我正在使用谷歌图表、烧瓶和 html。每当我手动输入数据时,它都能完美运行。但是当我尝试通过烧瓶发送数据时,它什么也没显示。
这是我的application.py:
import flask
import mysql.connector
app = flask.Flask(__name__)
f = mysql.connector.connect(host = "localhost", user = "root", passwd = "")
mycur = f.cursor()
@app.route("/")
def get_vals():
mycur.execute("use one_stop_healthcare;")
mycur.execute("select NAME, ACTIVE, DISCHARGED from ccinfo;")
dat = mycur.fetchall()
active=[[]]
for i in range(0,5,1):
for j in range(0,2,1):
active[i].append(dat[i][j])
active.append([])
del active[5]
active.insert(0, ['All the wards', 'Active cases', 'Recovered'])
print(active)
return flask.render_template("index.html", active=active)
app.run()
这是我的 index.html(在模板文件夹中)
<html>
<head>
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
google.charts.load('current', {packages: ['corechart', 'bar']});
google.charts.setOnLoadCallback(drawMultSeries);
var active
function drawMultSeries() {
// Here is where i manually add the data. It works like this.
var active = [['All the wards', 'Active cases', 'Recovered'], ['Ward-1', 357, 153], ['Ward-2', 744, 349], ['Ward-3', 83, 54], ['Ward-4', 1360, 433], ['Ward-5', 149, 100]]
var data = google.visualization.arrayToDataTable(active);
var options = {
title: 'Covid care centers',
chartArea: {width: '50%'},
hAxis: {
title: 'Active cases',
minValue: 0
},
vAxis: {
title: 'Wards'
}
};
var chart = new google.visualization.BarChart(document.getElementById('chart_div'));
chart.draw(data, options);
}
</script>
</head>
<body>
<div id="chart_div"></div>
</body>
解决方案
您目前根本不使用 python 对象“活动”。
在您的 html 代码中替换此行:
var active
经过
var active = {{active}}
(并删除手动声明)
推荐阅读
- python - 将一系列字符串转换为日期
- java - 如何在调整大小时重新绘制所有 JPanel?
- node.js - 如何将新访问令牌的刷新令牌发送到 Microsoft Graph(Passport-Azure-AD OIDCStrategy)
- javascript - Nodejs 授权方式
- java - 使用 JSch 身份验证处理符号
- reactjs - ReactJs显示错误Cannot read property setState of undefined with Axios form提交
- redis - 多个订阅一个主题
- python - 如何通过 Flask 请求文件属性获取 Python 字典
- caching - 设置 Ncache(分布式?/共享)
- flask - sqlalchemy烧瓶忽略过滤器查询中的and_和func.DATE