es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

matplotlib imshow muestra los valores de una matriz.

Tengo una matriz de 10 * 10 y ahora quiero insertar valores en mi gráfico de imagen que se traza con imshow de la biblioteca matplot, pero no sé cómo hacerlo. El código es el siguiente:

fig, ax = plt.subplots(1,1)
img = ax.imshow(df7)
ax.set_xticks([0,1,2,3,4,5,6,7,8,9])
ax.set_yticks([0,1,2,3,4,5,6,7,8,9])
ax.set_xticklabels(labels)
ax.set_yticklabels(labels)
fig.colorbar(img)

Imagen: Imagen

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Para insertar valores en la gráfica de imagen, puedes utilizar la función annotate del método imshow.

    Aquí tienes un ejemplo de código para insertar valores en la gráfica de imagen:

    fig, ax = plt.subplots(1,1)
    img = ax.imshow(df7)
    
    # Establecer etiquetas y barra de colores
    ax.set_xticks([0,1,2,3,4,5,6,7,8,9])
    ax.set_yticks([0,1,2,3,4,5,6,7,8,9])
    ax.set_xticklabels(labels)
    ax.set_yticklabels(labels)
    fig.colorbar(img)
    
    # Insertar valores en la gráfica de imagen
    for i in range(len(df7)):
        for j in range(len(df7)):
            text = ax.text(j, i, df7[i, j],
                           ha="center", va="center", color="w")
    

    En el código anterior, agregamos un bucle for anidado para iterar a través de los valores en la matriz y utilizamos el método text para insertar los valores en la gráfica de imagen. ha="center", va="center" centra los valores en el centro de cada bloque en la gráfica. El argumento color="w" establece el color del texto en blanco para que se muestre en los bloques coloreados.

    La gráfica de imagen resultante con los valores insertados debería lucir así:

    enter image description here

Comments are closed.