【问题标题】:How to show open, close, high and low in tooltip when the chart type is 'line' in highstocks?当图表类型为 highstocks 中的“线”时,如何在工具提示中显示开盘价、收盘价、最高价和最低价?
【发布时间】:2012-11-30 16:27:06
【问题描述】:

我想显示一个交易品种的开盘价、收盘价、最高价和最低价,但似乎 highstock 仅在图表类型为 ohlc 或烛台但未对齐时才显示该值。我对这个问题的解决方法是生成两个具有相同数据的图表,线(使其可见)和 ohlc(使其不可见),并从第二种类型中提取开、关、高和低并将其显示在工具提示中。我确定这不是正确的方法。有没有人有解决办法。

我的工具提示格式化程序

  formatter: function() {


                var s=' ';
                $.each(this.points, function(i, series) {

                   //when the series is of type 'line', series.point.open is undefined but works great on 'ohlc' type
 n=new Date(series.point.x);

 s += 'Open: <span style="font-weight:bold">' +series.point.open + '</span> Close: <span style="font-weight:bold">' +series.point.close + '</span> High: <span style="font-weight:bold">'+ series.point.high + '</span> Low: <span style="font-weight:bold">' + series.point.low + '</span>';

                });
                return s;

            }

http://jsfiddle.net/7G9Cj/4/

【问题讨论】:

  • 您可以将每根蜡烛存储在一个以 utc 日期为索引的数组中,然后将数组与 serie 一起存储。

标签: javascript jquery charts highcharts highstock


【解决方案1】:

解决了。这是万一有人需要的解决方案。

formatter: function() {
  var s = ' ';

  $.each(this.points, function(i, series) {
      for (i = 0; i < dataLength; i++) {
        if (ohlc[i][0] == series.point.x) //ohlc holds my main data
        {
          s += 'Open: <span style="font-weight:bold">' + ohlc[i][1] 
            + '</span> Close: <span style="font-weight:bold">' + ohlc[i][4] 
            + '</span> High: <span style="font-weight:bold">' + ohlc[i][2] 
            + '</span> Low: <span style="font-weight:bold">' + ohlc[i][3] 
            + '</span>';
          break;
        }
      }
    }
  });

  return s;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-13
    • 2021-11-08
    相关资源
    最近更新 更多