score:1

Accepted answer

The simplest solution is to overwrite the default setState function, example:

(function(H) {
  H.seriesTypes.networkgraph.prototype.pointClass.prototype.setState = function(state) {
    var args = arguments,
      Point = H.Point,
      others = this.isNode ? this.linksTo.concat(this.linksFrom) : [this.fromNode,
        this.toNode
      ];

    if (state !== 'select') {
      others.forEach(function(linkOrNode) {
        if (linkOrNode && linkOrNode.series) {
          Point.prototype.setState.apply(linkOrNode, args);

          if (!linkOrNode.isNode) {
            if (linkOrNode.fromNode.graphic) {
              Point.prototype.setState.apply(linkOrNode.fromNode, args);
            }
                        
        /* Modification - prevent hover effect on toNode
            if (linkOrNode.toNode && linkOrNode.toNode.graphic) {
              Point.prototype.setState.apply(linkOrNode.toNode, args);
            }
        */
          }
        }
      });
    }
    Point.prototype.setState.apply(this, args);
  }
}(Highcharts));

Live demo: https://jsfiddle.net/BlackLabel/1039zwbt/1/

Docs: https://www.highcharts.com/docs/extending-highcharts/extending-highcharts


Related Articles