Tutorial do Python Matplotlib

Tutorial do Python Matplotlib
Nesta lição da biblioteca Python Matplotlib, examinaremos vários aspectos dessa biblioteca de visualização de dados que podemos usar com o Python para gerar gráficos bonitos e intuitivos que podem visualizar dados de um formulário que a empresa deseja de uma plataforma. Para concluir esta lição, abordaremos as seguintes seções:
  • O que é python matplotlib?
  • Tipos de gráficos que podemos construir, como gráfico de barras, histograma, gráfico de dispersão, gráfico de área e gráfico de PE
  • Trabalhando com várias parcelas
  • Algumas alternativas para Python matplotlib

O que é python matplotlib?

O matplotlib.PyPlot é um pacote de plotagem de gráfico que pode ser usado para construir gráficos bidimensionais usando a linguagem de programação Python. Devido à sua natureza flugable, este pacote pode ser usado em qualquer aplicativo da GUI, servidores de aplicativos da Web ou scripts simples de Python. Alguns kits de ferramentas que estendem a funcionalidade do python matplotlib são:

  • Mapa base é uma biblioteca de plotagem de mapa que fornece recursos para criar projetos de mapas, linhas costeiras e limites políticos
  • NatGrid pode ser usado para dados irregulares da grade em dados espaçados
  • Ferramentas do Excel pode ser usado para trocar dados entre o MS Excel e Matplotlib
  • Cartopia é uma biblioteca de mapeamento muito complexa que fornece até recursos de transformação de imagem, além das projeções de pontos, linhas e polígonos

Apenas uma nota antes de começar é que usamos um ambiente virtual para esta lição que fizemos com o seguinte comando:

python -m virtualenv matplotlib
fonte matplotlib/bin/ativação

Depois que o ambiente virtual estiver ativo, podemos instalar a biblioteca MatPlotlib no Env virtual, para que exemplos que criamos a seguir possam ser executados:

pip install matplotlib

Vemos algo assim quando executamos o comando acima:

Você também pode usar o anaconda para executar esses exemplos, o que é mais fácil. Se você quiser instalá -lo em sua máquina, veja a lição que descreve “como instalar o Anaconda Python no Ubuntu 18.04 LTS ”e compartilhe seu feedback. Agora, vamos avançar para vários tipos de parcelas que podem ser construídas com Python Matplotlib.

Tipos de parcelas

Aqui, demonstramos os tipos de parcelas que podem ser desenhadas com Python matplotlib.

Gráfico simples

O primeiro exemplo que veremos será de um gráfico simples. Este exemplo é usado como uma demonstração de quão simples é construir um gráfico de gráfico junto com personalizações simples que acompanham. Começamos importando Matplotlib e definindo as coordenadas X e Y que queremos plotar:

De Matplotlib Import pyplot como PLT
x = [3, 6, 9]
y = [2, 4, 6]

Depois disso, podemos plotar essas coordenadas no gráfico e mostrar:

plt.trama (x, y)
plt.mostrar()

Quando executarmos isso, veremos o seguinte gráfico:


Com apenas algumas linhas de código, conseguimos plotar um gráfico. Vamos adicionar algumas personalizações para tornar este gráfico um pouco mais expressivo:

plt.Título ('LH Plot')
plt.ylabel ('y eixo')
plt.xlabel ('x eixo')

Adicione as linhas de código acima antes de mostrar que o enredo e o gráfico agora terão rótulos:

Vamos dar mais uma tentativa de personalizar este gráfico para torná -lo intuitivo com as seguintes linhas de código antes de mostrarmos o enredo:

x1 = [3, 6, 9]
y1 = [2, 4, 6]
x2 = [2, 7, 9]
y2 = [4, 5, 8]
plt.título ('info')
plt.ylabel ('y eixo')
plt.xlabel ('x eixo')
plt.plot (x1, y1, 'g', etiqueta = 'trimestre 1', largura de linha = 5)
plt.plot (x2, y2, 'r', etiqueta = 'trimestre 2', largura de linha = 5)
plt.lenda()
plt.grade (verdadeira, cor = 'k')
plt.mostrar()

Veremos o seguinte enredo quando executarmos o trecho de código acima:

Observe o que começamos e com o que acabamos, um gráfico muito intuitivo e atraente que você pode usar em suas apresentações e é feito com código python puro, definitivamente algo para se orgulhar !

Fazendo um gráfico de barras

Um gráfico de barras é especificamente útil quando queremos plataforma uma comparação com medidas específicas e limitadas. Por exemplo, comparar as marcas médias dos alunos com um único assunto é um bom caso de uso. Vamos construir um gráfico de barras para o mesmo caso de uso aqui, o trecho de código para isso será:

avg_marks = [81, 92, 55, 79]
Física = [68, 77, 62, 74]
plt.bar ([0.25, 1.25, 2.25, 3.25], AVG_MARKS, LABEL = "média", largura =.5)
plt.bar([.75, 1.75, 2.75, 3.75], Física, Label = "Physics", Color = 'R', Width =.5)
plt.lenda()
plt.XLABEL ('RANGE')
plt.Ylabel ('Marks')
plt.Título ('Comparação')
plt.mostrar()

O gráfico de barras criado com os dados de amostra acima parecerá o seguinte:

Existem vários bares presentes aqui para estabelecer uma comparação. Observe que fornecemos a largura de cada barra como um primeiro parâmetros e a barra é deslocada 0.5 valores do anterior.

Podemos combinar esta construção de gráficos de barras com a biblioteca de pandas para personalizar mais, mas abordaremos em uma lição diferente sobre os pandas.

Distribuições com histogramas

Os histogramas são frequentemente confundidos com gráficos de barras. A diferença mais básica está em seu caso de uso. Os gráficos de barras são usados ​​para estabelecer comparações entre dados, enquanto os histogramas são usados ​​para descrever a distribuição de dados.

Por exemplo, vamos aplicar o exemplo para as marcas dos alunos novamente, mas desta vez, apenas examinaremos as marcas médias dos alunos e veremos como eles são distribuídos. Aqui está o trecho de código, muito semelhante ao exemplo anterior:

Bins = [0,10,20,30,40,50,60,70,80,90,100]
avg_marks = [81, 77, 55, 88, 81, 66, 51, 66, 81, 92, 55, 51]
plt.Hist (avg_marks, caixas, histype = 'bar', rwidth = 0.8)
plt.XLABEL ('RANGE')
plt.Ylabel ('Marks')
plt.Título ('Comparação')
plt.mostrar()

O histograma criado com dados de amostra acima parecerá o seguinte:

O eixo Y mostra aqui que quantos alunos têm as mesmas marcas que foram fornecidas como dados para a construção.

Fazendo uma trama dispersa

Quando se trata de comparar várias variáveis ​​e estabelecer seu efeito um sobre o outro, o enredo de dispersão é uma boa maneira de apresentar o mesmo. Nisso, os dados são representados como pontos com valor de uma variável refletida pelo eixo horizontal e o valor da segunda variável determina a posição do ponto no eixo vertical.

Vejamos um snippet de código simples para descrever o mesmo:

x = [1,1.5,2,2.5,3,3.5,3.6]
y = [75,8,85,9,95,10,75]
x1 = [8,8.5,9,9.5,10,10.5,11]
y1 = [3,35,3.7,4,45,5,52]
plt.dispersão (x, y, etiqueta = '10 alunos de alta pontuação ', color =' r ')
plt.dispersão (x1, y1, etiqueta = '10 estudantes de baixa pontuação ', color =' b ')
plt.xlabel ('marcas')
plt.Ylabel ('contagem de estudantes')
plt.título ('plotagem de dispersão')
plt.lenda()
plt.mostrar()

O gráfico de dispersão criado com dados de amostra acima parecerá o seguinte:

Parcelas de área

As parcelas de área são usadas principalmente para rastrear mudanças nos dados ao longo do tempo. Eles também são denominados lotes de pilha em vários textos. Por exemplo, se queremos estabelecer uma representação de tempo investido por um aluno para cada assunto em um único dia, aqui está o código com o qual podemos fazer o mesmo:

dias = [1,2,3,4,5]
Física = [2,8,6,5,7]
Python = [5,4,6,4,1]
r = [7,9,4,3,1]
matemática = [8,5,7,8,13]
plt.plot ([], [], color = 'm', etiqueta = 'física', linewidth = 5)
plt.plot ([], [], color = 'c', etiqueta = 'python', linewidth = 5)
plt.plot ([], [], color = 'r', etiqueta = 'r', linewidth = 5)
plt.plot ([], [], color = 'k', etiqueta = 'math', linewidth = 5)
plt.StackPlot (dias, física, python, r, matemática, cores = ['g', 'k', 'r', 'b']))
plt.xlabel ('x')
plt.ylabel ('y')
plt.título ('plotagem de pilha')
plt.lenda()
plt.mostrar()

O gráfico de área criado com dados de amostra acima parecerá o seguinte:

A saída acima estabelece claramente uma diferença de tempo gasto por um aluno em cada assunto com uma maneira clara de fornecer a diferença e a distribuição.

Gráfico de setores

Quando queremos dividir a parte inteira em várias partes e descrever a quantidade que cada parte ocupa, um gráfico de pizza é uma boa maneira de fazer esta apresentação. É usado para mostrar a porcentagem de dados em conjunto de dados completo. Aqui está um trecho de código básico para fazer um gráfico simples de pizza:

rótulos = 'python', 'c ++', 'ruby', 'java'
tamanhos = [225, 130, 245, 210]
cores = ['r', 'b', 'g', 'c']
Explode = (0.1, 0, 0, 0) # Explode 1st Slice
# Trama
plt.torta (tamanhos, explode = explode, rótulos = rótulos, cores = cores,
Autopct = '%1.1f %% ', Shadow = true, startangle = 140)
plt.eixo ('igual')
plt.mostrar()

O gráfico de pizza criado com dados de amostra acima se parecerá com o seguinte:

Nas seções acima, analisamos vários componentes gráficos que podemos construir com a biblioteca Matplotlib para representar nossos dados de várias formas e estabelecer diferenças de maneira intuitiva, ao mesmo tempo em que sermos estatísticos.

Recursos e alternativas para Matplotlib

Um dos melhores recursos para o Matplotlib é que ele pode funcionar em muitos sistemas operacionais e back -ends gráficos. Ele suporta dezenas de sistemas operacionais e saída gráfica que analisamos nesta lição. Isso significa que podemos contar com isso quando se trata de fornecer uma saída de uma maneira que precisamos.

Existem várias outras bibliotecas presentes que podem competir com o matplotlib como:

  1. Seahorn
  2. Plotly
  3. Ggplot2

Embora as bibliotecas acima mencionadas possam apresentar algumas maneiras avançadas de descrever e apresentar dados de maneira gráfica, mas não há negação na simplicidade e na natureza eficaz da biblioteca Matplotlib.

Conclusão

Nesta lição, analisamos vários aspectos dessa biblioteca de visualização de dados que podemos usar com o Python para gerar gráficos bonitos e intuitivos que podem visualizar dados de uma forma que a empresa deseja de uma plataforma. O Matplotlib é uma das mais importantes bibliotecas de visualização quando se trata de engenharia de dados e apresentar dados na maioria das formas visuais, definitivamente uma habilidade que precisamos ter sob nosso cinto.

Compartilhe seus comentários sobre a lição no Twitter com @sbmaggarwal e @linuxhint.