在 Google 可视化图表编辑器中修改图表后,希望保存 ChartWrapper 对象,以便页面重新加载他们选择的最后一个图表,而不是选项中的默认设置。
我已经使用以下代码成功保存了 ChartWrapper 对象的 JSON.stringfy 表示:
function getWrapper() {
chart = chartEditor.getChartWrapper();
localStorage.setItem('chartWrapper', JSON.stringify(chart));
redrawChart();
}
默认图表的代码如下:
chart = new google.visualization.ChartWrapper({
chartType: 'LineChart',
containerId: 'chart_div',
dataTable: data,
options: {
title: '@Html.Raw(Model.KeyIndicatorName)',
hAxis: {
slantedText: true,
slantedTextAngle: 30,
title: 'Reporting Period'
},
vAxis: {
title: '@Model.XAxis'
},
chartArea: {
top: 40,
width: "65%"
},
pointSize: 5
}
});
如果 localStorage 项可用,则重新加载时我希望默认选项被这些值取代。
我该如何实现?
最佳答案
需要使用图表包装方法toJSON
方法,而不是JSON.stringify
...
function getWrapper() {
chart = chartEditor.getChartWrapper();
localStorage.setItem('chartWrapper', chart.toJSON());
redrawChart();
}
然后您可以直接从 json 创建图表...
var chart = new google.visualization.ChartWrapper(localStorage.getItem('chartWrapper'));
关于javascript - Google Visualization API - 保存和检索 ChartWrapper 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48564191/