score:19

Accepted answer

you can access each button preference with something like this:

exporting: {
    buttons: {
        printbutton: {
            symbol: 'circle'
        },
        exportbutton: {
            enabled: false
        }    
    }
}

an expandable example with your custom button would be:

exporting: {
    buttons: {
        printbutton: {
            enabled: false
        },
        exportbutton: {
            enabled: false
        },
        custom: {
            symbol: 'diamond',
            x: -62,
            symbolfill: '#b5c9df',
            hoversymbolfill: '#779abf',
            _titlekey: 'printbuttontitle',
            onclick: function () {
                alert('click!')
            }
        }
    }
}

score:0

if you just want to hide default custom buttons,you could simply use:

exporting: {
      buttons: {
        contextbutton: {
          enabled: false
        },
        printbutton: {
            enabled: false,
        },
      }
    }

if you want to use your own custom button or label you can use this:

exporting: {
      buttons: {
        contextbutton: {
          enabled: false
        },
        exportbutton: {
            text: `chrome`,
            _titlekey: "yourkey",
            onclick:function(){
            alert('clicked chrome');
            },
            x:-410
        },

        printbutton: {
            enabled: false,
            text: `ie: `,
             _titlekey:"mykey",
            onclick: function () {
                alert('clicked ie');
            },
            x:-400,
            y:30
        },          
      }
    },

in this i have disabled default as well as printbutton, you can use x and y to set the positions of the label. you can find my code in fiddle here : https://jsfiddle.net/m3yegczx/20/

score:0

if you are using a framework then you can hide by this way.

    hioptions *options = [[hioptions alloc]init];
    hiexporting *exporting = [[hiexporting alloc]init];
    exporting.enabled = [[nsnumber alloc] initwithbool:false];
    options.exporting = exporting;

score:0

as for current highcharts (7.2.1), you can hide them by setting option below

exporting: {
    buttons: {
        contextbutton: {
            menuitems: ["downloadpng", "downloadjpeg", "downloadpdf", "downloadsvg"]
        }
    }
}

check api at https://api.highcharts.com/highcharts/exporting.buttons.contextbutton.menuitems

score:6

it's not possible as an option, but you can hide the default buttons then create your own using html. then you can bind your custom button as you need.

var chart = new highcharts.chart({

    chart: {
        renderto: 'container'
    },

    credits: {
        enabled: false
    },

    xaxis: {
        categories: ['jan', 'feb', 'mar', 'apr', 'may', 'jun', 'jul', 'aug', 'sep', 'oct', 'nov', 'dec']
    },

    series: [{
        data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]        
    }],
        exporting: {
            enabled: false
        }
    });

console.log( highcharts.renderer.prototype.symbols )‚Äč

score:19

for anyone else who is using a newer version of highcharts and the selected answer doesn't work, you need to use the below instead to hide the button.

exporting: {
        buttons: {
            contextbutton: {
                enabled: false
            }    
        }
    }

Related Query

More Query from same tag