如何将会话存储中的数据放入 Highchart?

How to put data in Highchart from session storage?

我正在尝试从会话存储变量加载饼图高图中的数据,但我没有得到任何结果。

我想要这个:

$(function () {
Highcharts.chart('container', {
    chart: {
        type: 'pie',
        options3d: {
            enabled: true,
            alpha: 45
        }
    },
    title: {
        text: 'Contents of Highsoft\'s weekly fruit delivery'
    },
    subtitle: {
        text: '3D donut in Highcharts'
    },
    plotOptions: {
        pie: {
            innerSize: 100,
            depth: 45
        }
    },
    series: [{
        name: 'Delivered amount',
        data: [
            ['Bananas', 8],
            ['Kiwi', 3],
            ['Mixed nuts', 1],
            ['Oranges', 6],
            ['Apples', 8],
            ['Pears', 4],
            ['Clementines', 4],
            ['Reddish (bag)', 1],
            ['Grapes (bunch)', 1]
        ]
    }]
});

});

我将信息存储在这样的会话变量中:

sessionStorage.data = "['Bananas', 9], ['Kiwi', 9]";

然后,我把这个变量放在数据字段中:

$(function () {
Highcharts.chart('container', {
    chart: {
        type: 'pie',
        options3d: {
            enabled: true,
            alpha: 45
        }
    },
    title: {
        text: 'Contents of Highsoft\'s weekly fruit delivery'
    },
    subtitle: {
        text: '3D donut in Highcharts'
    },
    plotOptions: {
        pie: {
            innerSize: 100,
            depth: 45
        }
    },
    series: [{
        name: 'Delivered amount',
        data: sessionStorage.data
    }]
});

});

我做错了什么?

非常感谢!

改变

series : [[{name: 'Delivered amount',data: sessionStorage.data}]

series = [[{name: 'Delivered amount',data: sessionStorage.data}]

您将会话数据存储为字符串,然后尝试将 Highcharts 数据设置为该字符串 - 您应该将其反序列化为 javascript 数组。

如果您像这样更改 sessionStorage.data 的格式:

'[["Bananas", 9], ["Kiwi", 9]]'

您可以使用 JSON.parse 反序列化它:

series: [{
    name: 'Delivered amount',
    data: JSON.parse(sessionStorage.data)
}]