Boa noite, João! Tudo bem com você?
É possível sim, vou te ensinar como podemos fazer isso. Teremos que primeiro adicionar uma lista com as cores de cada barra. No nosso caso, temos 5, uma para cada região. Teremos a seguinte lista:
cores_das_labels = ['white', 'white', 'white', 'white', 'black']
Com a nossa lista de cores das labels criadas, vamos agora percorrer através de um loop cada barra e adicionar as cores das labels ao atributo color (color = cores_das_labels[indice]
):
cores_das_labels = ['white', 'white', 'white', 'white', 'black']
for indice, container in enumerate(ax.containers):
labels = [f'R$ {valor.get_height()/1000:,.0f}k'.replace(",",".") for valor in container]
ax.bar_label(container, label_type="center", labels = labels, size = 10, color = cores_das_labels[indice], fontweight = "bold")
Em resumo, o que fizemos foi utilizar uma lista de cores predefinidas e atribuí-las diretamente às labels das barras. Veja como ficará nosso resultado:
Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição. Abraços e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!