所以,我已经看了几个小时了,我没有想法。我的应用程序返回一个 JSON 对象,我需要从中解析 4 个数据集并制作 3 个图表和一个表格。对于我的生活,我无法弄清楚如何“提取”每个部分。JSON 看起来像:
{
"allele":{
"12426597":{
"??":4,
"CC":3,
"TT":4,
"CT":12
},
"878198":{
"??":4,
"AA":1,
"AC":15,
"CC":3
},
"6447271":{
"??":4,
"GG":14,
"AG":5
}
},
"haplo":{
"CT,AG,AC":3,
"TT,GG,AC":1,
"CC,GG,CC":1,
"TT,AG,CC":1,
"TT,GG,CC":1
},
"exercise":"p1"
}
我只需要为三个键/ID(12426597,878198,6447271)获取数据,并为每个键制作一个条形图(需要数据转换<==见)。然后我需要将它插入 Highcharts ......他们的 API 调用键和值的有序数组。
我考虑过首先制作一个 ID 数组:
var snpsObj = data.allele_frequency; // data returned from $.getJSON
var snpList = [];
for (prop in snpsObj) {
if (!snpsObj.hasOwnProperty(prop)) {
continue;
}
snpList.push(prop);
}
这确实让我得到了想要的数组。然后访问“子”键,例如:
snpsObj.snpList[0];
...希望返回,例如:
{
"CC" : 23,
"CT" : 36,
"TT" : 12,
}
但这根本行不通。我能得到的最多是返回类似的东西:
allele_frequency : [object Object ]
我知道有一些基本的东西我只是在我头脑冰冷的头脑中忘记了......有什么建议吗?
Highcharts 需要格式化为数组的键和标签,例如:
类别:['C', 'T'] 数据:[3, 9] // C=3, T=9