【问题标题】:HighStocks Array SeriesHighStocks 阵列系列
【发布时间】:2013-04-03 15:04:38
【问题描述】:

我正在使用来自雅虎的日期和收盘价创建一个单线系列图表。我已将日期转换为 JS 时间戳并将它们放入名为 timeStampArray 的数组中,并将收盘价放入名为 closePrices 的数组中。

我可以用这样的数据填充图表:

data : [
          [ 1361750400000, 442.80],
          [ 1361491200000, 450.81]

       ],

我希望使用我的数组中的数据,API 说要使用一个包含 x 和 y 两个值的数组,就像这样

data: [[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] 这是错误的。

【问题讨论】:

  • 关于您的更新 - 无论您的数组值的顺序如何,图表仍会将它们绘制在正确的 x 值上......它们不会出现 x 顺序,他们也不应该...

标签: javascript arrays highcharts highstock


【解决方案1】:

如果您的意思是希望它们以相反的顺序排序,您可以使用 x 轴上的 'reversed' 属性:

http://api.highcharts.com/highstock#xAxis.reversed

如果您的意思是希望它们以输入的任何顺序列出,而不进行排序,那将会复杂得多。

您可以提供序数 x 值,并提供日期作为附加数据。然后,您可以使用轴标签格式化程序来显示您希望的日期。

【讨论】:

    猜你喜欢
    • 2013-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-25
    • 1970-01-01
    • 2016-08-23
    • 1970-01-01
    相关资源
    最近更新 更多