如何从highstock图表中提取数据

How to extract the data from highstock chart

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

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

是的。每个图表都存储在 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 文档的布局与其创建的 JavaScript 对象的格式相同。可以在这里查看:http://api.highcharts.com/highcharts.

其实如果你下载带有图表的页面,你可以很容易地提取数据。它将存储在主 *.html 文件中。

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