English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Gráfico de Pizza do Matplotlib

O gráfico de pizza pode exibir uma série de dados. O gráfico de pizza mostra o tamanho dos itens em uma série de dados (chamado de fatia), em proporção à soma dos itens. Os pontos de dados no gráfico de pizza são exibidos como a porcentagem do gráfico de pizza total.

A API do Matplotlib tem uma função pie(), que gera um gráfico de pizza representando os dados do array. A área da fatia de cada fatia é determinada pelo x/sum(x) fornecido. Se sum(x<1então o valor de x é diretamente fornecido na área decimal, e o array não será normalizado. O gráfico de pizza terá um tamanho de1fatia vazia - sum(x).

Se o gráfico e o eixo forem quadrados, ou se a direção do eixo for igual, o gráfico de pizza parece melhor.

Parâmetros

A tabela a seguir lista os parâmetros do gráfico de pizza -

x - Array, tamanho das fatias. etiquetas - Lista. Uma série de strings, fornecendo etiquetas para cada fatia. cores - Uma série de parâmetros de cor do matplotlib, o gráfico de pizza será itinerado por eles. Se for None, serão usados as cores do ciclo ativo atual. Autopct - string é usada para marcar as fatias com números. As etiquetas serão colocadas dentro das fatias. A string de formato será fmt%pct.

Os seguintes códigos usam a função pie() para exibir o gráfico de pizza da lista de alunos registrados no curso de linguagem de computador. Usando o parâmetro autopct, a porcentagem correspondente é exibida dentro de cada fatia, e o parâmetro é definido como %.1.2f%.

Exemplo de código:

# Filename : example.py
# Copyright : 2020 By w3codebox
# Author by : pt.oldtoolbag.com
# Date : 2020-08-08
#! /usr/bin/env python
 #coding=utf-8
 import matplotlib.pyplot as plt
 import numpy as np
 import math
 plt.rcParams['font.sans']-serif'] = ['SimHei']  # Passo um (substituir sans-serif字体)
 plt.rcParams['axes.unicode_minus'] = False  # Original de 【立地货】,comercialização de conteúdo, favor entrar em contato com o autor para obter permissão, não comercial, manter o link original:
 fig = plt.figure()
 ax = fig.add_axes([0,0,1,1]
 ax.axis('equal')
 langs = ['C', 'C++', 'Java', 'Python', 'PHP']
 students = [23,17,35,29,12]
 ax.pie(students, labels = langs, autopct='%')1.2f%%')
 plt.show()

Executar o código de exemplo acima, obter os seguintes resultados -