Curso matplotlib - Gráfico de barras verticais (Cores das barras)

2 minute read


Cor das barras

Para alterar a cor das barras passamos uma str através do parâmetro color com o nome da cor desejada. As cores disponíveis são as mesmas vistas anteriormente. Por exemplo:

espessuras = [0.5, .7, 0.8, 0.3, -0.2]
inicio = [0, 1, 2, 3, 4,]
plt.figure(figsize=(8,6))
plt.bar(frutas, precos, width=espessuras, align='edge', bottom=inicio, color='yellow')
plt.show()

Figura 1 - Gráfico de barras verticais com barras na cor amarela.

gráfico de barras verticais desenhado com o matplotlib.


Também é possível passar uma sequência de nomes de cores através de uma list, o que altera a cor das barras individualmente. Por exemplo:

espessuras = [0.5, .7, 0.8, 0.3, -0.2]
cores = ['r', 'g', 'k', 'w', 'y']
inicio = [0, 1, 2, 3, 4,]
plt.figure(figsize=(8,6))
plt.bar(frutas, precos, width=espessuras, align='edge', bottom=inicio, color=cores)
plt.show()

Figura 2 - Gráfico de barras verticais com barras com cores variadas.

gráfico de barras verticais desenhado com o matplotlib.


Cor das bordas das barras

Também podemos alterar a cor das bordas das barras, o que é feito através do parâmetro edgecolor, passando uma str ou uma sequência (list, tuple, ndarray, etc) contendo as str com o nome das cores desejadas. Por exemplo, para deixar todas as bordas na cor preta:

espessuras = [0.5, .7, 0.8, 0.3, -0.2]
cores = ['r', 'g', 'k', 'w', 'y']
inicio = [0, 1, 2, 3, 4,]
plt.figure(figsize=(8,6))
plt.bar(frutas, precos, width=espessuras, align='edge', bottom=inicio, color=cores, edgecolor='k')
plt.show()

Figura 3 - Gráfico de barras verticais com barras com cores variadas com bordas na cor preta.

gráfico de barras verticais desenhado com o matplotlib.


Também é possível alterar a cor das bordas de cada barra individualmente, passando uma list com os nomes das cores. Por exemplo:

espessuras = [0.5, .7, 0.8, 0.3, -0.2]
cores = ['r', 'g', 'k', 'w', 'y']
cores_borda = ['g', 'm', 'k', 'y', 'b']
inicio = [0, 1, 2, 3, 4,]
plt.figure(figsize=(8,6))
plt.bar(frutas, precos, width=espessuras, align='edge', bottom=inicio, color=cores, edgecolor=cores_borda)
plt.show()

Figura 4 - Gráfico de barras verticais com barras com cores variadas e com bordas com cores variadas.

gráfico de barras verticais desenhado com o matplotlib.


Espessura das bordas das barras

Para alterar a espessura das bordas basta passar um número (int ou float) ou uma sequência de números através do parâmetro linewidth. Por exemplo:

espessuras = [0.5, .7, 0.8, 0.3, -0.2]
cores = ['r', 'g', 'k', 'w', 'y']
cores_borda = ['g', 'm', 'k', 'y', 'b']
inicio = [0, 1, 2, 3, 4,]
plt.figure(figsize=(8,6))
plt.bar(frutas, precos, width=espessuras, align='edge', bottom=inicio, color=cores, edgecolor=cores_borda,
       linewidth=2)
plt.show()

Figura 5 - Gráfico de barras verticais com barras com cores variadas e com bordas mais espessas e com cores variadas.

gráfico de barras verticais desenhado com o matplotlib.


Também é possível alterar a espessura de cada barra individualmente, passando a espessura desejada para cada barra em uma list para o parâmetro linewidth. Por exemplo:

espessuras = [0.5, .7, 0.8, 0.3, -0.2]
espessura_borda = [1, 2, 3, 4, 5]
cores = ['r', 'g', 'k', 'w', 'y']
cores_borda = ['g', 'm', 'k', 'y', 'b']
inicio = [0, 1, 2, 3, 4,]
plt.figure(figsize=(8,6))
plt.bar(frutas, precos, width=espessuras, align='edge', bottom=inicio, color=cores, edgecolor=cores_borda,
       linewidth=espessura_borda)
plt.show()

Figura 6 - Gráfico de barras verticais com barras com cores variadas e com bordas de espessuras variadas e com cores variadas.

gráfico de barras verticais desenhado com o matplotlib.


Qual a diferença entre o plt.scatter() e o plt.bar() em relação as cores disponíveis para serem utilizadas?

O plt.bar() aceita apenas cores no estilo RGB.

plt.bar() não aceita cores no estilo RGB.

Nenhuma diferença


Anterior Próximo

Updated: