在 JavaScript 中从 JSON 字符串绘制图表
draw a chart from json string in javascript
我必须从以下json字符串中绘制图表:
{
"d":{
"results":[
{
"_metadata":{
"uri": "http://www.something.com/hi",
"type" : "something.preview.hi"
}, "Period", "1988", "Age": 20, "Size" : 80
},
"_metadata":{
"uri": "http://www.something.com/hi",
"type" : "something.preview.hi"
}, "Period", "1989", "Age": 25, "Size" : 90
}
] }}
我使用 jquery.flot.js 库来绘制图表。这是绘制图表的示例,它工作正常:
var d1 = [];
for (var i = 0; i < 14; i += 0.5)
d1.push([i, Math.sin(i)]);
var d2 = [[0, 3], [4, 8], [8, 5], [9, 13]];
myChart.setDataArray(d1);
myChart.setDataArray(d2);
根据示例,我将 json 转换为对象数组:
var results = $.parseJSON(responseText)["d"]["results"];
var sampleData = [];
for (var i = 0, len = results.length; i < len; i++) {
var result = results[i];
sampleData.push({ Perioden: result.Perioden,
Size: result.Size,
Age: result.Age});
}
var myData = [];
for (var i in sampleData) {
myData.push([sampleData[i].Period, sampleData[i].Age]);
}
var myData1 = [];
for (var i in sampleData) {
myData1.push([sampleData[i].Period, sampleData[i].Size]);
}
myChart.setDataArray(myData);
myChart.setDataArray(myData1);
但是我收到数据图表数据格式错误的错误。anyody 可以看到我的代码和示例之间有什么区别吗?
我猜你的 json 格式很好。 但是您提供的示例不是(在第二个"URI2"行之后尾随"i"和 ","而不是 "句点" 之后的 ":">
第二件事,你的json中有Period,Perioden是你的js代码。 检查您是否在任何地方都使用相同的名称
然后你可以尝试控制台.log(myData,myData1(看看你是否有预期的结果
告诉我们是否足够,或者您是否有其他问题
试试这个:
var myData = [];
sampleData.forEach(function(item){
myData.push([item.Perioden, item.Age]);
});
相关文章:
- 如何在JavaScript中将字符串转换为函数引用
- D3在一个调用中绘制不同的SVG形状,没有可见性
- jQuery中是否内置了任何字符串格式化函数
- Javascript,有没有一种方法可以将数组写成没有逗号或空格的单个文本字符串
- ng打开空字符串
- 正则表达式在字符串中找到base64
- 如何将字符串值从php页面发送到java脚本页面
- 有没有一个javascript图形绘制库可以进行气球树布局
- 子字符串/正则表达式以获取字符串中保存的 SRC 值
- 字符串在将其传递给另一个活动Android JavaScript时读取Null
- 对id以某个字符串开头的元素进行计数
- 绘制动画openlayers线条字符串路径
- Javascript,绘制字符串,画布
- 根据64字符串绘制画布图片时出错
- 将 json 字符串转换为数组格式,可用于绘制数据图表
- 获取要发送到服务器以导出为报表的数据表当前绘制查询字符串
- 在 JavaScript 中从 JSON 字符串绘制图表
- Openlayers-在地图上绘制字符串
- 在Javascript中绘制字符串的上半部分
- Highcharts未将日期字符串绘制为类别