如何重塑现有的 JSON 以适应 Highcharts
Posted
技术标签:
【中文标题】如何重塑现有的 JSON 以适应 Highcharts【英文标题】:How do I reshape my existing JSON to fit Highcharts 【发布时间】:2018-06-17 15:46:39 【问题描述】:我是 JS 新手,无法将我的数据提供给 Highcharts 进行可视化。
假设我有以下 JSON 数据
"is_error":0,
"keys":[
"count",
"created_date",
"source",
"gender_id",
"type"
],
"error":"",
"values":[
"count":3,
"created_date":"2017-08-09",
"source":"",
"gender_id":"",
"type":"Organization"
,
"count":1,
"created_date":"2017-08-10",
"source":"",
"gender_id":"",
"type":"Organization"
,
"count":2,
"created_date":"2017-08-09",
"source":"",
"gender_id":1,
"type":"Individual"
,
"count":1,
"created_date":"2017-08-12",
"source":"",
"gender_id":1,
"type":"Individual"
]
如何将其转换为 Highcharts 系列数组,使其看起来像这样:
series: [
name: 'Organization',
data: [
[Date.UTC(2017, 08, 09), 3],
[Date.UTC(2017, 08, 10), 1],
]
,
name: 'Individual',
data: [
[Date.UTC(2017, 08, 09), 2],
[Date.UTC(2017, 08, 12), 1],
]
]
在 JSON 中,我有一些不需要的信息(来源和性别 ID)。
这是我的example in JSFiddle,包含完整的大数据集,我想使用 JS 对其进行转换并将其放入 Highchart 中。
有没有一种简单的方法可以将这样的 JSON 转换为可以插入到 Highchart 中的东西?
【问题讨论】:
series.data 中的第二个日期来自哪里? 个人和组织都只有两个数据点,每个数据点由一个日期和一个数字(计数)定义。 【参考方案1】:勾选这个Fiddle,根据需要更新
series: chartData
【讨论】:
谢谢。日期有问题,我似乎无法弄清楚为什么日期显示在 Highchart 的 x 轴上的方式 好的,我知道了new Date(d.created_date).getTime()
需要使用 new Date(d.created_date)
的 insted。我将更改添加到Fiddle以上是关于如何重塑现有的 JSON 以适应 Highcharts的主要内容,如果未能解决你的问题,请参考以下文章