Cómo determinar el orden de las barras en un gráfico de barras de matplotlib

Supongamos que leemos algunos datos en un marco de datos de pandas:

data1 = pd.read_csv("data.csv", "\t")

El contenido se ve así:

Y luego defina una función que nos dé un gráfico de barras horizontal, donde las longitudes de las barras representen valores y las barras estén etiquetadas con las teclas.

def barchart(data, labels):
    pos = arange(len(data))+.5    # the bar centers on the y axis
    barh(pos, data, align='center', height=0.25)
    yticks(pos, labels)

Entonces llamamos a la función de trama de esta manera:

barchart(data1["val"], data1["key"])

Lo que nos da la siguiente trama:

Ahora, ¿qué determina el orden de las barras?

Supongamos que queremos las barras en un orden especial, digamos[C, A, D, F, E, B], ¿cómo podemos hacer cumplir esto?

Respuestas a la pregunta(2)

Su respuesta a la pregunta