我正在为使用Chartkick模块的Flask应用更新一些功能。特别是,某些图表具有大量系列,默认情况下只有少数几个可见。由于我使用的是Highcharts API,因此我的数据组织为:
[{'data': [['value1', 10], ['value2', 20]], 'name': 'series1'},
{'data': [['value1', 30], ['value2', 40]], 'name': 'series2', 'visible': False}]
根据控制台输出,将我的Python字典转换为JavaScript对象后,False看起来像是抛出异常。这是参考错误:
Uncaught ReferenceError: False is not defined
at (index):29
29: new Chartkick.LineChart(document.getElementById("chart-0"), [{'name': 'series1', 'data': [['value1', 10], ['value2', 20]]}, {'visible': False, 'name': 'series2', 'data': [['value1', 30], ['value2', 40]]}], {"library": {}});
我曾考虑使用tojson,但使用{% line_chart data %}
调用Chartkick。由于{% line_chart {{ data|tojson }} %}
是无效语法,您是否可以将脚本标记中定义的变量传递给Jinja语句?使用Chartkick时传递布尔值的正确方法是什么?