docs: function () {
  			var series = this,
  				yAxis = series.yAxis,
  				center = yAxis.center,
  				options = series.options,
  				renderer = series.chart.renderer,
  				overshoot = options.overshoot,
  				overshootVal = overshoot && typeof overshoot === 'number' ? overshoot / 180 * Math.PI : 0;
  
  			H.each(series.points, function (point) {
  				var graphic = point.graphic,
  					rotation = yAxis.startAngleRad + yAxis.translate(point.y, null, null, null, true),
  					radius = (pInt(pick(point.options.radius, options.radius, 100)) * center[2]) / 200, // docs: series<solidgauge>.data.radius http://jsfiddle.net/highcharts/7nwebu4b/
  					innerRadius = (pInt(pick(point.options.innerRadius, options.innerRadius, 60)) * center[2]) / 200, // docs: series<solidgauge>.data.innerRadius
  					shapeArgs,
  					d,
  					toColor = yAxis.toColor(point.y, point),
  					fromColor;
  
  				if (toColor === 'none') { // #3708
  					toColor = point.color || series.color || 'none';
  				}
  				if (toColor !== 'none') {
  					fromColor = point.color;
  					point.color = toColor;
  				}
  
  				// Handle overshoot and clipping to axis max/min
  				rotation = Math.max(yAxis.startAngleRad - overshootVal, Math.min(yAxis.endAngleRad + overshootVal, rotation));
  
  				// Handle the wrap option
  				if (options.wrap === false) {
  					rotation = Math.max(yAxis.startAngleRad, Math.min(yAxis.endAngleRad, rotation));
  				}
  				rotation = rotation * 180 / Math.PI;
  
  				var angle1 = rotation / (180 / Math.PI),
  					angle2 = yAxis.startAngleRad,
  					minAngle = Math.min(angle1, angle2),
  					maxAngle = Math.max(angle1, angle2);
  
  				if (maxAngle - minAngle > 2 * Math.PI) {
  					maxAngle = minAngle + 2 * Math.PI;
  				}
  
  				point.shapeArgs = shapeArgs = {
  					x: center[0],
  					y: center[1],
  					r: radius,
  					innerR: innerRadius,
  					start: minAngle,
  					end: maxAngle,
  					fill: toColor
  				};
  				point.startR = radius; // For PieSeries.animate
  
  				if (graphic) {
  					d = shapeArgs.d;
  					graphic.animate(shapeArgs);
  					shapeArgs.d = d; // animate alters it
  				} else {					
  					point.graphic = renderer.arc(shapeArgs)
  						.attr({
  							stroke: options.borderColor || 'none',
  							'stroke-width': options.borderWidth || 0,
  							fill: toColor,
  							'sweep-flag': 0
  						})
  						.add(series.group);
  				}
  			});
  		}