HighStocks 阵列系列
2013-04-03
186
我正在使用来自雅虎的日期和收盘价创建单线系列图表。我已将日期转换为 JS 时间戳,并将它们放入名为 timeStampArray 的数组中,并将收盘价放入名为 closePrices 的数组中。
我可以用如下数据填充图表:
data : [
[ 1361750400000, 442.80],
[ 1361491200000, 450.81]
],
我希望使用数组中的数据,API 表示使用具有两个 x 和 y 值的数组,如下所示
数据:[[5, 2], [6, 3], [8, 2]]
因此,我可以合并两个数组以使其适合此格式吗?
我只能找到如何将我的数组组合成键值对的示例,例如
{'test1':'1', 'test2':'2'};
此外,当我使用硬编码数据创建图表时,它会按升序排列日期,但我希望它保留输入的顺序,例如 2 月 25 日在 2 月 22 日之前,因为这显示的是历史数据。
有办法纠正这个问题吗?
这是我当前代码的 jsFiddle: http://jsfiddle.net/mXnZy/
更新: 我试过了
var timeClose = new Array();
for(var i=0; i<data.query.results.quote.length; i++)
{
timeClose.push( [timeStampArray[i], closePrices[i]] );
}
但是这个输出
[1361750400000, 442.80, 1361491200000, 450.81]
是错误的。
1个回答
如果您的意思是希望以相反的顺序排列它们,则可以使用 x 轴上的“reversed”属性:
http://api.highcharts.com/highstock#xAxis.reversed
如果您的意思是希望以输入的顺序列出它们,而不进行排序,则情况会复杂得多。
您可以提供序数 x 值,并提供日期作为附加数据。然后,您可以使用轴标签格式化程序来显示所需的日期。
jlbriggs
2013-04-03