使用highcharts在图表中添加十字准线

542 阅读1分钟

记录下highcharts里一个功能,方便以后再次用到。

需求: 鼠标移动时显示十字指示线

highcharts官网中表明tooltip下该属性crosshairs已废弃,本以为该需求不能完成;后来又发现xAxis和yAxis下也有 crosshair 属性

image.png

效果1: x轴对应显示的是一根线,y轴对应显示的是一块矩形面积,只要不设置width 即可 image.png 代码:

xAxis: {
    gridLineWidth: 1,
    crosshair: {
        color: lineColor,
        label: { enabled: true, align: "right" }
    }
}

效果2: x,y轴均显示一根线,设置width值, 另外需要显示自己想要的label信息时,用formatter格式化文本内容

image.png 代码:

    xAxis:{
        crosshair: {
              snap: false,
              width: 1,
              color: 'rgba(0,0,0,0.4)',
              dashStyle: 'shortdot',
              label: {
                enabled: true,
                align: 'right',
                // 格式化文本内容
                formatter: function (e) {
                // e 直接是x或y轴的值,y值需要处理下
                  return data.yAxisCategories[e];
                }
              }
         }
     }