El gráfico circular, también llamado gráfico de tarta o, en inglés, pie chart, es adecuado para mostrar proporciones en un conjunto, y es especialmente aconsejable cuando el número de sectores (de valores a mostrar) no es demasiado elevado pues, de otra forma, los sectores del gráfico resultan más difíciles de apreciar.
La función que nos permite mostrar un gráfico circular es matplotlib.pyplot.pie, existiendo también un método del conjunto de ejes, matplotlib.axes.Axes.pie, con la misma funcionalidad.
En su forma más simple, la función recibe como único argumento una lista con el valor de cada sector:
Podemos pasar los nombres a mostrar en cada sector con el parámetro label. El parámetro colors nos permite especificar el color de cada uno de los sectores y el parámetro shadow controla si mostramos o no una sombra:
La distancia de las etiquetas al centro del gráfico se controla mediante el parámetro labeldistance y se mide en radios. Es decir, asignando un valor de 1 provocaríamos que las etiquetas se mostrasen exactamente sobre la circunferencia.
Es posible separar uno o varios de los sectores con el parámetro explode: éste recibe una tupla o una lista con tantos valores como sectores haya. Cada valor representa la distancia del sector al centro del gráfico medida en radios. Esto significa que una distancia 0 supone que el sector en cuestión está en su posición inicial junto a los demás. Una distancia mayor significa que dicho sector se separa del centro. En el siguiente ejemplo pasamos al argumento explode la tupla (0.2, 0, 0, 0). El primer valor es el correspondiente a "Audi", por lo que su sector se separará un quinto de radio (0.2):
Por último, podemos mostrar los porcentajes representados por cada sector utilizando el parámetro autopct. Éste toma, por defecto, el valor None, pero si le asignamos una cadena de texto que defina un formato, o si le asignamos una función, se mostrará el valor correspondiente. El parámetro pctdistance controla la distancia del número mostrado al centro del gráfico, nuevamente en radios. El valor por defecto es 0.6: