我想要从数据库中动态创建的图表中存储highcharts数据,并将该数据重新放入highcharts。要存储在数据库中的数据创建一个像这样的字符串:动态填充的highcharts数据和数据库存储
var chartPoints = "";
var series = chart.series;
for(var i = 0; i < series.length; i++) {
var numberOfPoints = series[i].data.length; //Get number of points
for(var n = 0, length = numberOfPoints; n < length; n++) {
chartPoints += '[' + series[i].points[n].x + ',' + series[i].points[n].y + '],';
}
chartPoints += '/,';
}
这就造成这样的“[1470009600000,0]一个字符串,[1471219200000,0]/[1470009600000,-1],[ 1471219200000,-1],/,“x值是日期。这是系列之间带有“/”的2个系列。 2系列每个都有2个数据点。所有的数据点都有一个x和一个y值。这只是点数和系列数量较少的一个例子,为了使其工作。
问题是,我不知道我应该如何将这个字符串中的值推回到highcharts。我知道我可以动态地添加系列highcharts这样的:
chart.addSeries({
name: "Test",
data: [
[x, y],
[x, y]
]
});
但我不知道该怎么做,与这样的字符串。我试图在字符串之外创建一个具有多个维度的数组,以便通过一些循环来从这些数据中提取值,但是我无法做到。做这个的最好方式是什么?
为什么将斜杠和数据作为字符串而不是本机JSON返回? –
告诉我你将如何完成它 – Koiski
你可以使用一些基本的js函数来解析你的数据,但事实是它不是Highcharts的最佳格式,就像塞巴斯蒂安提到使用JSON而不是字符串会好得多。 http://jsfiddle.net/y3quyg4n/1/ –