2014-02-05 4 views
11

Есть ли способ изменить позицию по умолчанию метрики процента в диаграмме диаграммы matplot lib?matplotlib percent позиция метки в круговой диаграмме

Вот пример круговая диаграмма:

My pie chart

который я создал с помощью:

plt.pie(sizes, labels=labels, colors=colors, explode=explode, autopct='%1.0f%%') 

Теперь мне не нравится, как несколько процентов этикетки вторгаясь на других разделов територию (на самом деле единственным перпиратором в этом примере является раздел 9 м). В идеале я бы хотел, чтобы такие ярлыки находились за пределами круговой диаграммы со стрелкой какого-то типа, указывающей на раздел, или альтернативно только вне раздела.

+1

Я никогда не использовал 'plt.pie', но вы должны иметь возможность делать то, что хотите вручную. функция возвращает 'tuple (патчи, тексты, autotexts)'. 'autotexts' - это последовательность« Text », содержащая проценты. Если вы зацикливаете на них, вы сможете найти «0.1%» (или что хотите) и переместить позицию текста (чтобы сделать это прилично, вам может потребоваться преобразовать в/из круговых координат). –

ответ

16

Вы можете контролировать расстояние до процентов и этикеток от центра пирога с использованием pctdistance= и labeldistance=, попробуйте это на код:

plt.pie(sizes, labels=labels, autopct='%1.0f%%', pctdistance=1.1, labeldistance=1.2) 

Вы также можете установить радиус пирога с помощью radius= (по умолчанию: 1)

Смежные вопросы