python matplotlib histogram especifica diferentes colores para diferentes barras

Quiero colorear diferentes barras en un histogtwig basado en a qué bin pertenecen. por ejemplo, en el siguiente ejemplo, quiero que las primeras 3 barras sean azules, las siguientes 2 sean rojas y el rest negro (las barras y el color reales están determinados por otras partes del código).

Puedo cambiar el color de todas las barras con la opción de color, pero me gustaría poder dar una lista de los colores que se usan.

import numpy as np import matplotlib.pyplot as plt data = np.random.rand(1000) plt.hist(data,color = 'r') 

Una forma puede ser similar al enfoque en otra respuesta :

 import numpy as np import matplotlib.pyplot as plt fig, ax = plt.subplots() data = np.random.rand(1000) N, bins, patches = ax.hist(data, edgecolor='white', linewidth=1) for i in range(0,3): patches[i].set_facecolor('b') for i in range(3,5): patches[i].set_facecolor('r') for i in range(5, len(patches)): patches[i].set_facecolor('black') plt.show() 

Resultado:

introduzca la descripción de la imagen aquí