score:7

Accepted answer

To make a "Show All" option at the end of the legend you could add an empty series with that name, like this:

series: [{
    // ...
}, { 
    name: 'Show All' 
}]

And then to reverse the legend functionality you can use the legendItemClick event, along with checking for clicks on your dummy series, for example like this:

plotOptions: {
    series: {
        events: {
            legendItemClick: function(event) {
                var s = this.chart.series;
                for(i = 0; i < s.length; i++) {
                    if(this.name == 'Show All' || this == s[i])
                        s[i].setVisible(true);
                    else
                        s[i].setVisible(false);
                }
                return false;
            }
        }
    }
}

See this JSFiddle demonstration using your initial demo.


More Query from same tag