|
|
|
@ -4722,6 +4722,7 @@ nv.models.pie = function() {
|
|
|
|
|
color = d3.scale.category20().range(),
|
|
|
|
|
valueFormat = d3.format(',.2f'),
|
|
|
|
|
showLabels = true,
|
|
|
|
|
labelThreshold = .02, //if slice percentage is under this, don't show label
|
|
|
|
|
donut = false;
|
|
|
|
|
|
|
|
|
|
var dispatch = d3.dispatch('chartClick', 'elementClick', 'elementDblClick', 'elementMouseover', 'elementMouseout');
|
|
|
|
@ -4850,7 +4851,10 @@ nv.models.pie = function() {
|
|
|
|
|
return 'translate(' + arc.centroid(d) + ')';
|
|
|
|
|
})
|
|
|
|
|
//.style('font', 'bold 12px Arial') // font style's should be set in css!
|
|
|
|
|
.text(function(d, i) { return d.value ? getLabel(d.data) : ''; });
|
|
|
|
|
.text(function(d, i) {
|
|
|
|
|
var percent = (d.endAngle - d.startAngle) / (2 * Math.PI);
|
|
|
|
|
return (d.value && percent > labelThreshold) ? getLabel(d.data) : '';
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -4945,6 +4949,12 @@ nv.models.pie = function() {
|
|
|
|
|
return chart;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
chart.labelThreshold = function(_) {
|
|
|
|
|
if (!arguments.length) return labelThreshold;
|
|
|
|
|
labelThreshold = _;
|
|
|
|
|
return chart;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return chart;
|
|
|
|
|
}
|
|
|
|
@ -5075,7 +5085,7 @@ nv.models.pieChart = function() {
|
|
|
|
|
chart.dispatch = dispatch;
|
|
|
|
|
chart.pie = pie; // really just makign the accessible for discretebar.dispatch, may rethink slightly
|
|
|
|
|
|
|
|
|
|
d3.rebind(chart, pie, 'y', 'label', 'id', 'showLabels', 'donut');
|
|
|
|
|
d3.rebind(chart, pie, 'y', 'label', 'id', 'showLabels', 'donut', 'labelThreshold');
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
chart.margin = function(_) {
|
|
|
|
|