python - 将烧瓶中的系列传递给chart.JS
问题描述
将python烧瓶中的数据框列变量传递给图表JS的最佳方法是什么?我当前的代码有效,但前提是我使用的是非常旧版本的 Chart JS。如果我更新版本,我似乎无法使用相同的方式传递变量(line_values、line_labels)。
这是我的烧瓶代码
...
line_labels=dfchart['index']
line_values=dfchart['cumulative_profit']
min = dfchart['cumulative_profit'].min()
max = dfchart['cumulative_profit'].max()
max = max+((2/100)*max)
max= round(max/10)*10
min= round(min/10)*10
max= max + abs(min)
return render_template('line_chart.html', min=min, max=max, labels=line_labels,
values=line_values)
这是我的 HTML:
<script src='https://cdnjs.cloudflare.com/ajax/libs/Chart.js/1.0.2/Chart.min.js'></script>
</head>
<body>
<center>
<canvas id="chart" width="600" height="260"></canvas>
<script>
// bar chart data
var lineData = {
labels : [
{% for item in labels %}
"{{ item }}",
{% endfor %}
],
datasets : [{
fillColor: "#e67e00",
pointRadius: 0,
strokeColor: "rgba(151,187,205,1)",
pointColor: "rgba(151,187,205,1)",
pointStrokeColor: "#e67e0",
pointHighlightFill: "#e67e0",
pointHighlightStroke: "#e67e0",
bezierCurve : true,
pointRadius: 4,
data : [
{% for item in values %}
{{ item }},
{% endfor %}]
}
]
}
Chart.defaults.global.animationSteps = 50;
Chart.defaults.global.tooltipYPadding = 16;
Chart.defaults.global.tooltipCornerRadius = 0;
Chart.defaults.global.tooltipTitleFontStyle = "normal";
Chart.defaults.global.tooltipFillColor = "rgba(0,0,0,0.8)";
Chart.defaults.global.animationEasing = "easeOutBounce";
Chart.defaults.global.responsive = false;
Chart.defaults.global.scaleLineColor = "#e67e0";
Chart.defaults.global.scaleFontSize = 12;
// get bar chart canvas
var mychart = document.getElementById("chart").getContext("2d");
steps = 10
max = {{ max }}
min = {{min}}
// draw bar chart
var LineChartDemo = new Chart(mychart).Line(lineData, {
scaleOverride: true,
scaleSteps: steps,
scaleStepWidth: Math.ceil(max / steps),
scaleStartValue: min,
scaleShowVerticalLines: false,
scaleShowGridLines : true,
barShowStroke : true,
scaleShowLabels: true,
bezierCurve: true,
});
</script>
</center>
</body>
</html>
解决方案
推荐阅读
- next.js - 在 Nextjs 中构建后如何导入某个图像并获取确切的路径(图像名称)
- node.js - Http 流使用 Keep-alive 并在其创建时验证套接字
- javascript - 选择开始日期时如何设置结束日期?
- kubernetes - 使用 ELK 设置 zipkin 时发生错误
- npm - 私有 npm 注册表不适用于自签名证书
- r - 是否有一个 R 函数来选择一组变量的最后一行?
- angular - Firebase 不是在模拟器上工作,而是在网络上工作
- python - Pyspark 无法订阅 Kafka 主题
- jquery - Bootstrap 4.6 Carousel 多列一次滑动一个
- google-cloud-platform - 将云源存储库镜像到 GitLab 存储库