Flask,python字典到highcharts JS图

时间:2014-10-13 14:00:18

标签: javascript python dictionary highcharts flask

我有一个烧瓶网络应用程序。在这个应用程序中,我称之为“bar.htm”

return render_template('bar.htm', mapping=mapping)

其中mapping是一个字典,如:

mapping = {'jack': 4098, 'sape': 4139}

现在我想在Highcharts条形图中使用这个字典。带有示例数据的条形图如下所示: http://jsfiddle.net/gh/get/jquery/1.9.1/highslide-software/highcharts.com/tree/master/samples/highcharts/demo/column-rotated-labels/

(链接到代码以防止出现大问题)

如何在这个JS文件中实现自己的字典? 高图图表的数据集如下:

series: [{ name: 'Population', data: [< - 这是变量mapping的来源 ['Shanghai', 23.7], ['Lagos', 16.1], ['Instanbul', 14.2], ['Karachi', 14.0], ['Mumbai', 12.5], ['Moscow', 12.1] ]

2 个答案:

答案 0 :(得分:2)

在Python视图中:

mapping = [
    ['Shanghai', 23.7],
    ['Lagos', 16.1],
    ['Instanbul', 14.2],
    ['Karachi', 14.0],
    ['Mumbai', 12.5],
    ['Moscow', 12.1],
    ['Sao Paulo', 11.8],
    ['Beijing', 11.7],
    ['Guangzhou', 11.1],
    ['Delhi', 11.1],
    ['Shenzhen', 10.5],
    ['Seoul', 10.4],
    ['Jakarta', 10.0],
    ['Kinshasa', 9.3],
    ['Tianjin', 9.3],
    ['Tokyo', 9.0],
    ['Cairo', 8.9],
    ['Dhaka', 8.9],
    ['Mexico City', 8.9],
    ['Lima', 8.9]
]
return render_template('page.html', mapping=mapping)

HTML:

...
series: [{
    name: 'Population',
    data: {{ mapping|safe }},
    dataLabels: {
        ...

mapping定义为列表,然后使用safe过滤器将其传递给模板。

答案 1 :(得分:0)

您可以将对象用作数据点,但不能使用自定义名称。它应该是{y:10,name:'yourname'}。因此,只有您需要的是使用正确结构的映射对象。