如何从highstock图表中提取数据

时间:2015-03-19 14:29:19

标签: javascript json highcharts

假设我在网站上有一个类似this的样本高档图表。我想知道是否可以单独从图表中提取数据(即图表是由第三人创建的,而图表所使用的数据是其他人无法访问的)。

<img src="http://www.highcharts.com/stock/demo/basic-line">

2 个答案:

答案 0 :(得分:8)

是的。每个图表都存储在HighChart的Highcharts.charts数组中。在您已链接的页面上,当前包含一个图表:

Highcharts.charts
-> [ z.Chart ]

这是一个包含该图表中所有数据的对象。我们可以通过从Highcharts.charts数组索引(在这种情况下为0)中选择它来查看它:

Highcharts.charts[0]
-> z.Chart { ... }

这包含您需要的所有信息。每个图表对象都包含一个series属性,该属性是一个数组,包含图表呈现的每个系列的数据。每个系列中都包含data属性,其中包含所有数据,name属性包含系列的名称。

例如:

Highcharts.charts[0].series[0].name
-> "APPL"
Highcharts.charts[0].series[0].data
-> Array[1774]

HighCharts&#39;文档的布局格式与它创建的JavaScript对象的格式相同。这可以在这里查看:http://api.highcharts.com/highcharts

答案 1 :(得分:1)

实际上,如果您下载带有图表的页面,则可以轻松提取数据。它将存储在主* .html文件中。

这不是实际数据,而是图表中每个点的位置。但你只需要扩展它就可以得到你想要的东西。