Curso matplotlib - Gráfico de linhas (edição das linhas)

3 minute read

banner provisório


Cor da linha

Para alterar a cor da linha desenhada utilizando o plt.plot(), basta passar uma str com o nome da cor desejada através do parâmetro c ou o parâmetro color . Por exemplo, para deixar a cor da linha vermelha, precisamos passar a str 'r' para o parâmetro color:

plt.figure(figsize=(12,6))
plt.plot(horario,temperatura, color='r')
plt.show()

Figura 1 - Linhas na cor vermelha.

gráfico de linhas desenhado com o matplotlib relacionando o horário e a temperatura ambiente com linha vermelha


As opções de cores são as mesmas que estudamos anteriormente.


Espessura da linha

Para alterar a espessura da linha desenhada utilizando o plt.plot() basta passar um número (int ou float) com a espessura desejada através do parâmetro linewidth:

plt.figure(figsize=(12,6))
plt.plot(horario,temperatura, color='r', linewidth=3.5)
plt.show()

Figura 3 - Linhas na cor vermelha mais espessa.

gráfico de linhas desenhado com o matplotlib relacionando o horário e a temperatura ambiente com linha vermelha mais espessa


Estilo da linha

banner provisório

Para alterar o estilo da linha, utilizamos o parâmetro linestyle, passando uma str com o nome do estilo, ou uma tuple contendo estilos parametrizados.

Estilo padrão

Para utilizar apenas o nome do estilo, temos de passar uma str com uma das quatro opções abaixo:

  • 'solid' (sólido);
  • 'dotted' (pontos);
  • 'dashed' (traços);
  • 'dashdot' (traço-ponto);

Visualmente:

Figura 4 - Exemplo de estilos de linhas.

Exemplos visuais de como são renderizados os diferentes tipos de linhas


Observe que também temos a opção de deixar a linha vazia, utilizando o 'None', ou '' ou ' ', e por isso as três primeiras linhas da imagem acima não aparecem. Você encontra o script desenvolvido para gerar o gráfico acima clicando aqui.

Por exemplo, para deixar a linha com estilo traço-ponto, basta passar o linestyle='dashdot':

plt.figure(figsize=(12,6))
plt.plot(horario, temperatura, c='red', linewidth=3.5, linestyle='dashdot')
plt.show()

Figura 5 - Linhas na cor vermelha mais espessa - traço ponto.

gráfico de linhas desenhado com o matplotlib relacionando o horário e a temperatura ambiente com linha vermelha mais espessa com estilo traço ponto


Estilos personalizados

Para utilizar estilos personalizados (parametrizados), é preciso passar uma tuple com 2 elementos:

  • o primeiro elemento é o número 0;

  • o segundo elemento é uma outra tuple, que aceita vários parâmetros, mas sempre em dupla:

    • o primeiro parâmetro dessa tuple se refere ao tamanho do marcador que irá compor a linha. Por exemplo, o número 1 se refere a um ponto. O número 2 se refere a dois pontos, e assim por diante.

    • o segundo valor desse tuple se refere a distância entre cada ponto que compõe a linha.

Exemplo: A tuple (0, (1, 10)) irá gerar uma “linha” com pontos (primeiro elemento) e separada em 10 unidades (segundo elemento)

plt.figure(figsize=(12,6))
plt.plot(horario, temperatura, c='red', linewidth=3.5, linestyle=(0, (1,10)))
plt.show()

Figura 6 - Linhas na cor vermelha mais espessa - estilo personalizado.

gráfico de linhas desenhado com o **matplotlib** relacionando o horário e a temperatura ambiente com linha vermelha mais espessa com estilo personalizado


Exemplo: A tuple (0, (5, 10)) irá gerar uma “linha” com 5 pontos juntos, formando um traço (primeiro elemento) e separada em 10 unidades (segundo elemento)

plt.figure(figsize=(12,6))
plt.plot(horario, temperatura, c='red', linewidth=3.5, linestyle=(0, (5,10)))
plt.show()

Figura 7 - Linhas na cor vermelha mais espessa - estilo personalizado.

gráfico de linhas desenhado com o **matplotlib** relacionando o horário e a temperatura ambiente com linha vermelha mais espessa com estilo personalizado


Exemplo: A tuple (0, (5, 10, 1, 4)) irá gerar uma “linha”, onde o primeiro marcador da linha será um traço (5 unidades) espaçada em 10 unidades do próximo ponto. O segundo marcador será um ponto (uma unidade) espaçada em 4 unidades do próximo ponto. Este padrão irá se repetir até que todo o intervalo seja preenchido.

plt.figure(figsize=(12,6))
plt.plot(horario, temperatura, c='red', linewidth=3.5, linestyle=(0, (5,10, 1, 4)))
plt.show()

Figura 8 - Linhas na cor vermelha mais espessa - estilo personalizado.

gráfico de linhas desenhado com o **matplotlib** relacionando o horário e a temperatura ambiente com linha vermelha mais espessa com estilo personalizado


Este tipo de formatação permite uma edição complexa do estilo da linha. Entretanto, dê preferências para os estilos mais comuns, pois os leitores estão acostumados com eles, e irão perceber as diferenças entre as linhas de forma mais rápida. Outros exemplos e detalhes você encontra na documentação


Como alterar o estilo de linha para pontilhado?

Passando o parâmetro linestyle = ":"

Passando o parâmetro linewidth = ":"

Passando o parâmetro linestyle = ".."


Qual é a função do parâmetro linewidth?

Alterar a cor da linha

Alterar a espessura da linha

Alterar o estilo da linha


Anterior Próximo

Updated: