Gráfico de linha Matplotlib

Gráfico de linha Matplotlib

Neste artigo, vamos explicar como usar a função da plotagem em Python.

O gráfico é amplamente utilizado pela análise de dados para descobrir o relacionamento entre dois conjuntos de dados numéricos. Neste artigo, vamos ver como usar o matplotlib.Pyplot Para desenhar um gráfico de linha. Este artigo fornecerá detalhes completos que você precisa trabalhar na função da plotagem.

O matplotlib.Pypolt oferece maneiras diferentes de plotar o gráfico. Para plotar o gráfico como um gráfico de linha, usamos o plot de função ().

A sintaxe é:

1
2
3
importar matplotlib.pyplot como plt
plt.trama (x, y)

Aqui o x pertence ao eixo x, e o y pertence ao eixo y.

Exemplos:

Exemplo 1: desenhe um gráfico de linha com parâmetros padrão

Neste exemplo, vamos desenhar um gráfico de linha usando o matplotlib.Pyplot configurações padrão. Apenas criamos dois pontos de dados (x e y) e plotamos o gráfico, como mostrado abaixo. Este exemplo simples ajudará você a entender o gráfico de linha. Os dados que criamos aqui explicam como o funcionário conta a cada ano de 2011 a 2016. Podemos ver diretamente a partir dos dados, mas as mesmas informações serão exibidas através do gráfico de linhas.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# line_chart_with_default_settings.py
# importe a biblioteca necessária
importar matplotlib.pyplot como plt
# X e y dados
númeroofemp = [13, 200, 250, 300, 350, 400]
ano = [2011, 2012, 2013, 2014, 2015, 2016]
# traçar um gráfico de linha
plt.Lote (Ano, NumberOfemp)
plt.mostrar()

Saída: python line_chart_with_default_settings.py

Linha 3 a 8: Importamos a biblioteca necessária e criamos duas listas para x e y. A lista númeroftemp representa o eixo x e o ano da lista representa o eixo y.

Linha 11 a 12: Passamos esses parâmetros X e Y para a função da plotagem e depois plotamos o gráfico da linha.

Exemplo 2: Adicionando os nomes de etiquetas ao longo do eixo

Neste exemplo, vamos alterar algumas configurações padrão. No exemplo anterior, se veremos o gráfico, é difícil entender o que o gráfico está tentando dizer porque não há informações sobre dados de eixo x ou eixo y. Além disso, não somos capazes de ver onde os dados reais residem no enredo. Então, vamos adicionar marcadores para ver os pontos de dados na trama junto com os rótulos.

A lista do marcador que podemos usar é dada abaixo:

marcador símbolo descrição
““.” apontar
"," pixel
"O" círculo
"V" Triangle_down
"^" triângulo_up
““<“ triângulo_left
">" triângulo_right
"1" Tri_down
"2" TRI_UP
"3" TRI_LEFT
"4" Tri_right
"8" octógono
"S" quadrado
"P" Pentágono
"P" mais (preenchido)
"*" estrela
"H" hexagon1
"H" hexagon2
"+" mais
"X" x
"X" x (preenchido)
"D" diamante
"D" Thin_diamond
"|" vline
"_" hline
0 (Tickleft) Tickleft
1 (Tickright) Tickright
2 (tickup) Tickup
3 (Tickdown) Tickdown
4 (Caretleft) Caretleft
5 (CareTright) CareTright
6 (Caretup) Caretup
7 (Caretdown) Caretdown
8 (CaretleftBase) Caretleft (centrado na base)
9 (CareTrightBase) CareTright (centrado na base)
10 (CaretUpBase) Caretup (centralizado na base)
11 (CaretdownBase) Caretdown (centrado na base)
"Nenhum" "" ou "" nada
'$… $' Renderizar a string usando mathtext. E.g., “$ F $” para marcador mostrando a letra.
Verts Uma lista de pares (x, y) usados ​​para vértices de caminho. O centro do marcador está localizado em (0, 0) e o tamanho é normalizado, de modo que o caminho criado seja encapsulado dentro da célula unitária.

Ref: https: // matplotlib.org/stable/api/markers_api.html

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# linechart_labels_marker.py
# importe a biblioteca necessária
importar matplotlib.pyplot como plt
# X e y dados
númeroofemp = [13, 200, 250, 300, 350, 400]
ano = [2011, 2012, 2013, 2014, 2015, 2016]
# traçar um gráfico de linha
plt.plot (ano, númerofemp, marker = "o")
# Definir nome da etiqueta do título do eixo x
plt.xlabel ("ano")
# Definir nome da etiqueta do título do eixo x
plt.Ylabel ("Número de funcionários")
# Definir o nome do rótulo do título do gráfico
plt.título ("Número de funcionários v/s de crescimento do ano")
plt.mostrar()

Saída: python linechart_labels_marker.py

Linha 11: Adicionamos mais um parâmetro no marcador da função da plotagem. O marcador será usado para exibir os pontos de dados no gráfico. Existem vários marcadores disponíveis para apoiar os dados fornecidos.

Linha 13 a 19: Definimos os nomes de etiquetas ao longo do eixo x, eixo y juntamente com o nome do título do gráfico.

Exemplo 3:

A função da plotagem possui um conceito de formatação de string cuja sintaxe é assim:

1
'[Marker] [Line] [Color]'

Na sintaxe acima, o primeiro representa o valor do marcador, o segundo representa o tipo de linha e o último valor representa a cor. Então, vamos usar esta opção de formato de string neste exemplo.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# linechart_formattingstring.py
# importe a biblioteca necessária
importar matplotlib.pyplot como plt
# X e y dados
númeroofemp = [13, 200, 250, 300, 350, 400]
ano = [2011, 2012, 2013, 2014, 2015, 2016]
# traçar um gráfico de linha
plt.Lote (ano, númerofemp, "o-r")
# Definir nome da etiqueta do título do eixo x
plt.xlabel ("ano")
# Definir nome da etiqueta do título do eixo x
plt.Ylabel ("Número de funcionários")
# Definir o nome do rótulo do título do gráfico
plt.título ("Número de funcionários v/s de crescimento do ano")
plt.mostrar()

Linha 11: Você pode ver que adicionamos uma string, "O-R", essa string que podemos dividir em três partes nas quais "o" representará o criador, "-" mostrará o tipo de linha e "r" representa o valor de cor vermelho. Depois de usar a string acima, nosso gráfico de linha plotado ficará como abaixo:

Saída: python linechart_formattingstring.py

Também podemos alterar o valor do formato da string de acordo com a nossa escolha. Então, novamente vamos usar a formatação da string, mas com valores diferentes:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# linechart_formattingstring.py
# importe a biblioteca necessária
importar matplotlib.pyplot como plt
# X e y dados
númeroofemp = [13, 200, 250, 300, 350, 400]
ano = [2011, 2012, 2013, 2014, 2015, 2016]
# traçar um gráfico de linha
plt.plot (ano, númerofemp, "*-b")
# Definir nome da etiqueta do título do eixo x
plt.xlabel ("ano")
# Definir nome da etiqueta do título do eixo x
plt.Ylabel ("Número de funcionários")
# Definir o nome do rótulo do título do gráfico
plt.título ("Número de funcionários v/s de crescimento do ano")
plt.mostrar()

Linha 11: Mudamos o formato da string para "*-b".

Depois de alterar o formato da string, nosso gráfico de linha é exibido abaixo. Portanto, podemos ajustar o valor do formato da string de acordo com a nossa escolha. O benefício de usar isso, não precisamos usar o nome do parâmetro como marcador e cor. No formato de string, "B" representa a cor azul.

Exemplo 4: colorir o gráfico da linha

Neste exemplo, vamos mudar a cor do gráfico de linha usando o parâmetro. Nos exemplos anteriores, vimos essa opção de mudança de cor através da formatação da string. No entanto, também podemos alterar a cor usando o parâmetro como outros parâmetros.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# change_colour.py
# importe a biblioteca necessária
importar matplotlib.pyplot como plt
# X e y dados
númeroofemp = [13, 200, 250, 300, 350, 400]
ano = [2011, 2012, 2013, 2014, 2015, 2016]
# traçar um gráfico de linha
plt.plot (ano, númerofemp, marcador = 'd', mfc = 'verde', mec = 'amarelo', ms = '7')
# Definir nome da etiqueta do título do eixo x
plt.xlabel ("ano")
# Definir nome da etiqueta do título do eixo x
plt.Ylabel ("Número de funcionários")
# Definir o nome do rótulo do título do gráfico
plt.título ("Número de funcionários v/s de crescimento do ano")
plt.mostrar()

Linha 11: Passamos pelo parâmetro marker = "d", mfc (Markerfacecolor) cor verde, MEC (MarkedGecolor) amarelo e ms (Markersize).

O MEC (MarkedGecolor) é uma cor que está fora do ponto de dados. O gráfico final após a execução do programa acima será exibido abaixo:

Exemplo 5: plote vários gráficos no mesmo gráfico quando a escala de linha é a mesma

O matplotlib também suporta desenhar vários gráficos no mesmo gráfico de linha. Podemos desenhar o mesmo gráfico usando o eixo de compartilhamento. Às vezes você só precisa compartilhar o eixo x e o eixo y. No entanto, às vezes precisamos compartilhar o eixo x e o eixo y, os quais dependem do tipo de valores que temos. Aqui, neste exemplo, temos os dois valores da mesma escala, para que possamos traçar facilmente o gráfico.

Vamos ver os dois cenários acima para entendê -los de uma maneira melhor.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# compartilhamento_x_axis.py
# importe a biblioteca necessária
importar matplotlib.pyplot como plt
# X e y dados
númerofemp_a = [13, 200, 250, 300, 350, 400]
númerofemp_b = [10, 100, 150, 200, 250, 800]
ano = [2011, 2012, 2013, 2014, 2015, 2016]
# traçar um gráfico de linha
plt.plot (ano, númerofemp_a, marcador = 'd', mfc = 'verde', mec = 'amarelo', ms = '7')
plt.plot (ano, númerofemp_b, marcador = 'o', mfc = 'vermelho', mec = 'verde', ms = '7')
# Definir nome da etiqueta do título do eixo x
plt.xlabel ("ano")
# Definir nome da etiqueta do título do eixo x
plt.Ylabel ("Número de funcionários")
# Definir o nome do rótulo do título do gráfico
plt.título ("Número de funcionários v/s de crescimento do ano")
plt.legenda (['númerofemp_a', 'númerofemp_b'])
plt.mostrar()

Linha 7 a 8: Criamos duas listas de dados, A e B, para o eixo x. Mas A e B têm os mesmos valores do eixo y. Então, neste gráfico, estamos compartilhando o eixo x apenas porque a escala do eixo y para A e B é a mesma.

Linha 12 a 13: Acabamos de adicionar mais uma função de plotagem com alguns parâmetros diferentes.

A saída é mostrada abaixo, com o eixo x compartilhado.

Saída: Python compartilhamento_x_axis.py

Exemplo 6: gráfico múltiplo quando a escala não é a mesma

Agora, vamos traçar um gráfico de linha onde não temos o eixo x na mesma escala. Em seguida, podemos plotar as diferentes escalas do eixo x nos lados esquerdo e direito do gráfico usando a função twinx ().

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
# line_with_different_scale.py
# importe a biblioteca necessária
importar matplotlib.pyplot como plt
# X e y dados
númeroofemp = [13, 200, 250, 300, 350, 400]
Rev = [0.4, 0.6, 0.8, 0.7, 0.8, 0.9]
ano = [2011, 2012, 2013, 2014, 2015, 2016]
# plot númerofemp em xaxis_1
fig, xaxis_1 = plt.subtramas ()
xaxis_1.plot (ano, númerofemp, marcador = 'd', mfc = 'verde', mec = 'amarelo', ms = '7')
xaxis_1.set_xlabel ("ano")
xaxis_1.set_ylabel ("Número de funcionários")
xaxis_1.set_title ("Número de funcionários e receita")
# Crie xaxis_2 com eixo x compartilhado
xaxis_2 = xaxis_1.Twinx ()
# plot rel em xaxis_2
xaxis_2.plot (ano, rev, marcador = 'o', mfc = 'vermelho', mec = 'verde', ms = '7')
xaxis_2.set_ylabel ("Rev [$ m]")
# Definindo a lenda
Figo.Legenda (['Número de funcionário', 'Rev'], loc = 'Upper esquerda')
plt.mostrar()

Linha 4: Importamos a biblioteca necessária.

Linha 7 a 9: Criamos três conjuntos de dados. O novo conjunto de dados é o Rev-List, que mostra a receita da empresa. Aqui, temos diferentes escalas do eixo x. Então, podemos mostrar as diferentes escalas nos lados esquerdo e direito. Para isso, temos que usar a função twinx () para criar eixos diferentes compartilhando o mesmo eixo x.

Linha 12 a 16: Usamos o PLT.Função Subplot () para criar nosso gráfico de primeira linha no gráfico.

Linha 19 a 22: Compartilhamos o eixo x usando a função Twinx () e atribuímos o nome XAXIS_2.

Saída: python line_with_different_scale.py

A saída abaixo mostra os dois eixos X diferentes nos lados esquerdo e direito.

Conclusão:

Neste artigo, vimos como usar a função da plotagem para desenhar um gráfico de linha. Explicamos todos os principais conceitos necessários para desenhar um gráfico de linha usando o matplotlib. Além disso, adicionamos o link do github para baixar o script python para este artigo.