如何使用高图突出密集系列中的垂直绘制线?

时间:2017-05-11 03:13:30

标签: javascript jquery highcharts

我有这个图表,可以在一次加载中呈现5年的数据。并且,其功能之一是用户可以通过按钮单击添加垂直(x轴)情节线。正如您在屏幕截图中看到的那样,红色垂直线位于密集线系列的后面。高架图中是否有一种方法可以使这条垂直线从串联线中突出(叠加)? enter image description here

Highchart代码

    myChart = new Highcharts.Chart({
        chart: {
            renderTo: 'container',
            type: 'line',
            zoomType: 'xy',
            panning: true,
            panKey: 'shift',
            plotBorderWidth: 1
        },
        legend: {
            layout: 'horizontal',
            align: 'left',
            itemDistance: 10,
            borderWidth: 0,
            itemMarginTop: 0,
            itemMarginBottom: 0,
            padding: 20
        },
        plotOptions: {
            series: {
                states: {
                    hover: {
                        enabled: false
                    }
                },
                dataLabels: {
                    enabled: false,
                    format: '{y}'
                },
                allowPointSelect: false
            }
        },
        xAxis: {
            type: 'datetime',
            labels: {
                rotation: -65,
                style: {
                    fontSize: '9px',
                    fontFamily: 'Verdana, sans-serif'
                }
            },
            crosshair: true,
            dateTimeLabelFormats: {
                day: '%d %b %Y %I:%M %P'
            }
        },
        yAxis: {
            gridLineColor: '#DDDDDD',
            gridLineWidth: 0.5
        },
        tooltip: {
            positioner: function () {
                return {
                    x: this.chart.plotLeft,
                    y: this.chart.plotTop
                }
            },
            useHTML: true,
            pointFormat: '<small><font color="{series.color}"><strong>{series.name}</strong></font>: <strong>{point.y}</strong></small><br/>',
            headerFormat: '<span style="font-size: 8px">{point.key}</span><br/>',
            xDateFormat: '%d-%m-%Y %H:%M:%S',
            shared: true,
            valueDecimals: 2,
            shadow: false,
            borderWidth: 0,
            backgroundColor: 'rgba(255,255,255,0.8)'
        },
        series: [{
            name: xTitle,
            data: dataSeries
        }]
    });

我试图谷歌它,但似乎无法找到任何类似的情况。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

要获取要在图表上呈现的绘图线,请使用zIndex选项对象的plotLines属性。通过测试,看起来zIndex值为3或更高将使其高于图线。我将它设置为4只是因为我在api文档中看到了对该值的引用。更新后的图表plotLines选项如下所示:

chart.xAxis[0].addPlotLine({
   value: 6.5,
   color: 'red',
   width: 2,
   id: 'plot-line-1',
   zIndex:4
});

我已更新您的jsFiddle以包含这些更改:

<强> jsFiddle