为什么我的JSON格式不同于HighCharts的例子
本文关键字:HighCharts 不同于 我的 JSON 格式 为什么 | 更新日期: 2023-09-27 18:12:36
当我使用jQuery的$。GetJSON返回的结果如下所示:
{"Points":[{"X":1,"Y":6},{"X":2,"Y":5},{"X":3,"Y":1},{"X":4,"Y":5},{"X":5,"Y":5},{"X":6,"Y":10},{"X":7,"Y":4},{"X":8,"Y":1},{"X":9,"Y":9},{"X":10,"Y":2}]}
然而,Highcharts文档指出输出应该是这样的:
[
[1,12],
[2,5],
[3,18],
[4,13],
[5,7],
[6,4],
[7,9],
[8,10],
[9,15],
[10,22]
]
如何解决这个问题?
额外信息:我使用这个例子http://www.highcharts.com/docs/working-with-data/custom-preprocessing # 3
下面是我的代码:JavaScript
<script>
var options = {
chart: {
renderTo: 'container',
type: 'spline'
},
series: [{}]
};
$(document).ready(function () {
$.getJSON("/HighchartsTest/JSONTest", function (data) {
options.series[0].data = data;
var chart = new Highcharts.Chart(options);
});
});
</script>
MVC c# public JsonResult JSONTest()
{
return Json(new GenericInfo(), JsonRequestBehavior.AllowGet);
}
public class GenericInfo
{
public Point[] Points { get; set; }
public GenericInfo()
{
Random r = new Random();
Points = new Point[10];
for (int i = 0; i < 10;)
{
Points[i] = new Point(++i, r.Next(0, 10) + 1);
}
}
}
}
public class Point
{
public int X { get; set; }
public int Y { get; set; }
public Point(int x, int y)
{
X = x;
Y = y;
}
}
我得到的图表是空的。当使用控制台检查图表时,chart.series[0].data
数组似乎为空。我似乎不能弄清楚如果我的代码是错误的,或者如果它只是不接受JSON对象。
问题是我发送的是GenericInfo对象而不是列表Points本身。在此之后,我还需要将名称X,Y更改为X,Y(非大写字母),这就固定了图表