score:1

i'm not sure if this is what you want: see example at jsfiddle

end angle is calculated as proportion of 45*180/100 = 81. so, end angle is at -9.

            startangle: -90,
            endangle: -9,
            center: ['50%', '75%']

and data is only one value:

        data: [
            ['firefox',   45.0]
        ]

and tooltip is changed to show 45% instead of 100%

    tooltip: {
        pointformat: '{series.name}: <b>{point.y:.1f}%</b>'
    },

update: used idea from @mark to calculate enddata using input data (see mark's comment in his answer). added also variable for startangle. see update at jsfiddle:

var data = 45;
var startangle = -90;
var endangle = (data/100 * 180) + startangle;
endangle = endangle == 0 ? 0.01 : endangle;
...
            startangle: startangle,
            endangle: endangle,
...
        data: [
            ['firefox',   data]
...

score:1

not to steal @antojurković's thunder but his idea in the comment is the simplest way to accomplish what you want.

here's an example fiddle.

the important parts are:

series: [{
        type: 'pie',
        name: 'browser share',
        innersize: '50%',
        data: [                
            {y: 45, name: 'firefox'},
            {y: 55, color: 'transparent',datalabels:{enabled: false}} // instead of the background color, use transparent, and disable datalabels
        ]
  }]

and

   tooltip: {
        formatter: function(){
            if (this.point.color == "transparent") {
                return false; // suppress the tooltips if it has no color
            } else {                    
                return this.series.name + ':<b>' + this.point.percentage +'%</b>';
            }
        }
    },

Related Query

More Query from same tag