2011-08-16 25 views
25

Quiero tener etiquetas con pequeño tamaño en un gráfico circular en Python para mejorar la visibilidad Este es el códigoCómo modificar el tamaño de las etiquetas en un gráfico circular en el pitón

import matplotlib.pyplot as plt 

frac=[1.40 , 10.86 , 19.31 , 4.02 , 1.43 , 2.66 , 4.70 , 0.70 , 0.13 , 1.48, 32.96 , 1.11 , 13.30 , 5.86] 
labels=['HO0900344', 'HO0900331', 'HO0900332', 'HO0900354', 
'HO0900358', 'HO0900374', 'HO0900372', 'HO0900373', 
'HO0900371', 'HO0900370', 'HO0900369', 'HO0900356', 
'HO0900353', 'HO0900343'] 

fig = plt.figure(1, figsize=(6,6)) 
ax = fig.add_subplot(111) 
ax.axis('equal') 
colors=('b', 'g', 'r', 'c', 'm', 'y', 'burlywood', 'w') 
ax.pie(frac,colors=colors ,labels=labels, autopct='%1.1f%%') 
plt.show() 

Gracias y saludos

Respuesta

29

Hay un par de formas en que puede cambiar el tamaño de fuente de las etiquetas.

Puede dynamically changet the rc settings. Agregue lo siguiente en la parte superior de su script:

import matplotlib as mpl 
mpl.rcParams['font.size'] = 9.0 

O puede modificar las etiquetas una vez que se hayan creado. Cuando llame al ax.piereturns a tuple de (parches, textos, autotexts). A modo de ejemplo, modificar algunas líneas finales de código como sigue:

patches, texts, autotexts = ax.pie(frac, colors=colors, labels=labels, autopct='%1.1f%%') 
texts[0].set_fontsize(4) 
plt.show() 
+1

Para ajustar el tamaño de todas las etiquetas a la vez, utilizar una lista por comprensión: '[_.set_fontsize (4) para _ en los textos] '. – DaveL17

Cuestiones relacionadas