Colors 如何在Highcharts中禁用悬停颜色更改?

Colors 如何在Highcharts中禁用悬停颜色更改?,colors,highcharts,hover,Colors,Highcharts,Hover,我正在为我的项目使用柱状图。我编写了一个自定义函数,它根据图表的y值为每个条形图着色。当我初始化图表时,这工作正常。当我将鼠标悬停在图表上时,条形图的颜色会回到默认值,并且我的自定义颜色永远不会返回 我尝试过悬停,但似乎不起作用。我不想改变颜色,即使当鼠标悬停在吧台上。有什么建议吗?您正在寻找: 小提琴 编辑 不要直接修改SVG来设置颜色,而是在api中进行: var max = 200; var seriesData = $.map([107, 31, 635, 203, 2]

我正在为我的项目使用柱状图。我编写了一个自定义函数,它根据图表的y值为每个条形图着色。当我初始化图表时,这工作正常。当我将鼠标悬停在图表上时,条形图的颜色会回到默认值,并且我的自定义颜色永远不会返回

我尝试过悬停,但似乎不起作用。我不想改变颜色,即使当鼠标悬停在吧台上。有什么建议吗?

您正在寻找:

小提琴

编辑

不要直接修改SVG来设置颜色,而是在api中进行:

    var max = 200;
    var seriesData = $.map([107, 31, 635, 203, 2],function(datum, i){
        return {
            color: datum > max ? 'red' : '#2f7ed8',
            y: datum
        };
    });


  $('#container').highcharts({
        chart: {
            type: 'bar'
        },
        tooltip: {
            valueSuffix: ' millions'
        },
        series: [{
            name: 'Year 1800',
            data: seriesData
        }]
    });

新建。

您以错误的方式更新颜色,请改用
point.update()


嗨,马克:我尝试过这个选项,但是第一次在上面悬停时,它仍然会改变我的自定义颜色。我不想丢失我根据y值定制的颜色bar@ssp,我不明白。您希望第一次悬停将其更改为自定义颜色,但在随后的悬停中再也不更改它?请看此示例,如果您将其悬停在其上,它会将其颜色更改回蓝色,然后您无法恢复使用该函数设置的原始颜色。我不想对屏幕上的条形图进行任何颜色更改hover@ssp,最好在highcharts api中更改颜色。在SVG的控制范围之外修改SVG永远不会受到欢迎,这应该作为最后的手段。请参阅更新的答案。HI mark,您能否为多个条件(如if-else-if-else)显示相同的示例?另外,我正在根据图表上两个系列的y值设置系列的颜色。您可能以错误的方式设置自定义颜色,您能显示出来吗?通常,您应该按以下方式为每个列设置特定的颜色:
series:[{data:[{x:x-value,y:y-value,color:'red'}]}]
Hi Pawel,我正在根据y值标准设置颜色。看看这个例子。在这里,当您将鼠标悬停在其上时,颜色会变回默认的蓝色。有没有办法在悬停时禁用此默认行为?
    var max = 200;
    var seriesData = $.map([107, 31, 635, 203, 2],function(datum, i){
        return {
            color: datum > max ? 'red' : '#2f7ed8',
            y: datum
        };
    });


  $('#container').highcharts({
        chart: {
            type: 'bar'
        },
        tooltip: {
            valueSuffix: ' millions'
        },
        series: [{
            name: 'Year 1800',
            data: seriesData
        }]
    });
    $('#container').highcharts({
        chart: {
            type: 'bar'
        },
        tooltip: {
            valueSuffix: ' millions'
        },
        series: [{
            name: 'Year 1800',
            data: [107, 31, 635, 203, 2]
        }]
    },function(chart){

        var max = 200;

        $.each(chart.series[0].data,function(i,data){

            if(data.y > max)
                data.update({
                    color:'red'
                });

        });

    });