线段的工具提示而非高图中的点

时间:2018-04-01 22:39:26

标签: javascript highcharts

我试图用线段表示宽度不等的箱子的直方图,我无法找到一种方法来显示每个线段而不是终点的工具提示。

我还使用垂直线段来表示误差线,理想情况下,水平和垂直条表示单个标记。那可能吗?我希望能够在一张图表上绘制以这种方式表示的多个直方图。

这是我在jsfiddle的设置:https://jsfiddle.net/znu1Lzht/15/

function h1(name,bins,vals,errs) {
  series = [ ];
  var nbins = bins.length - 1;
  var errs_ok = Array.isArray(errs) && (errs.length == nbins);
  for (var i=0; i<nbins; ++i) {
    var bin = { 'type': 'line', 'name': name,
      'data': [[bins[i],vals[i]],[bins[i+1],vals[i]]]
    };
    bin[i==0 ? 'id' : 'linkedTo'] = name;
    series.push(bin);
    if (!errs_ok) continue;
    var x = (bins[i]+bins[i+1])/2;
    var y = [vals[i]-errs[i],vals[i]+errs[i]];
    var err = { 'type': 'line', 'name': name, 'linkedTo': name,
      'data': [[x,y[0]],[x,y[1]]]
    };
    series.push(err);

  }
  return series;
}


Highcharts.chart('container', {
    plotOptions: {
      line: {
        color: '#000099',
        lineWidth: 2,
        marker: {
          enabled: false,
          states: { hover: { enabled: false } }
        }
      }
    },
    tooltip: { shared: true, crosshairs: true },
    series: h1('test',[0,1,5,10,20],[100,50,30,7],[5,5,5,8])
});

1 个答案:

答案 0 :(得分:0)

您可以通过将tooltip.pointFormat设置为false来禁用特定系列的工具提示:

  tooltip: {
    pointFormat: false
  }

现场演示: https://jsfiddle.net/BlackLabel/7qxz5Ldv/