Highcharts Highmaps悬停效果/鼠标输出颜色更改

Highcharts Highmaps悬停效果/鼠标输出颜色更改,highcharts,highmaps,Highcharts,Highmaps,我想完全禁用悬停效果 这是一段代码片段 series : [{ data : data, mapData: Highcharts.maps['custom/world'], joinBy: ['iso-a2', 'code'], name: 'Population density', states: { hover: {

我想完全禁用悬停效果 这是一段代码片段

 series : [{
            data : data,
            mapData: Highcharts.maps['custom/world'],
            joinBy: ['iso-a2', 'code'],
            name: 'Population density',
            states: {
                hover: {
                    enabled:false
                }
            },
            tooltip: {
                valueSuffix: '/km²'
            }
        }]
但是当我把鼠标移到外面的时候,还是有一些颜色的效果 这是一个JSFIDLE(请按上面所述更改系列选项)


如何修复鼠标从地图点移出时的颜色效果,任何帮助或参考都将不胜感激。

经过一番努力,我找到了上述问题的解决方案,您只需获取序列数据的所有点对象,悬停时为它们提供与当前相同的颜色,但是你不能像这样直接给颜色

 states: {
            hover: {
                color:this.color
            }
        },
因此,你可以把一些黑客像这样

  $('#container').highcharts('Map', options);
           var points = $('#container').highcharts().series[0].data;

           for (var i = 0; i < points.length; i++) {


               points[i].pointAttr.hover.fill = points[i].color;

           }
$(“#容器”)。高图('Map',选项);
var points=$(“#容器”).highcharts().series[0]。数据;
对于(变量i=0;i

问题解决了

您可以禁用它,如下所示:

states: {
        hover: {
            enabled: false,
        }
    },

下面是一个没有jquery的解决方案:

const map = new Highcharts.Map(chartOptions);

(function() {
    var points = map.series[0].data;
    for (var i = 0; i < points.length; i++) {
        points[i].pointAttr.hover.fill = points[i].color;
    }
})();
const map=new Highcharts.map(图表选项);
(功能(){
var points=map.series[0]。数据;
对于(变量i=0;i

在你实例化你的地图后,把它放进去

维卡斯的解决方案对我不起作用。未“定义”pointAttr

设置悬停颜色:null和亮度:0对我有效:

states: {
    hover: {
        color: null,  // Set no specific color to use original color
        brightness: 0 // Prevent brightness effect
    }
}

不幸的是,目前这与已知的bug有关:@SebastianBochan:通过一些技巧,您可以按照我的回答和它的工作原理来做fine@SebastianBochan我们怎么能在highmaps中有一个双击事件,因为自定义事件仅适用于highcharts