Matriz de Confusión con diferentes colores
Tengo un problema. He creado una matriz de confusión que se ve así:
cm = np.array([[2547,288],[ 255,216]])
fig, ax = plt.subplots(figsize=(12, 8))
ax = sns.heatmap(cm, annot=True, cmap='BuPu', fmt='g')
ax.set_title('Matriz de confusión de Seaborn con etiquetas\n\n');
ax.set_xlabel('\nValores Predichos')
ax.set_ylabel('Valores Reales ');
Etiquetas de los billetes – La lista debe estar en orden alfabético
ax.xaxis.set_ticklabels(['Verdadero','Falso'])
ax.yaxis.set_ticklabels(['Verdadero','Falso'])
Mostrar visualización de la matriz de confusión.
plt.show()
Este código es probablemente correcto, pero quiero que se vea un poco diferente así:
Como puede ver, los colores que deberían ser correctos son verdes y los demás rojos y también quiero mostrar las etiquetas (verdadero positivo, verdadero negativo, …). Y una etiqueta debería ser para los valores reales y predichos y para los valores negativos y positivos. Así que 1:1 como se puede ver en la foto a continuación.
¿Hay alguna manera de agregar etiquetas y corregir los colores en seaborn? ¡Muchas gracias por su ayuda!
davy.ai
Sí, hay una forma de agregar etiquetas y cambiar el esquema de colores en seaborn. Puedes agregar etiquetas personalizadas usando el parámetro
annot
en la funciónsns.heatmap()
. Para cambiar los colores, puedes crear un mapa de colores personalizado utilizando la funciónListedColormap()
del módulomatplotlib.colors
.Aquí te mostramos cómo puedes modificar el código existente para lograr el resultado deseado:
Este código produce una matriz de confusión que se parece a la segunda imagen que proporcionaste.
Ten en cuenta que en el código anterior, definimos un mapa de colores personalizado utilizando la función
ListedColormap()
. Pasamos una lista de dos colores a esta función, uno para las predicciones correctas y otro para las incorrectas. También definimos una lista de etiquetas para las diferentes celdas en la matriz de confusión, que agregamos al gráfico utilizando la funcióntext()
.También hicimos algunos otros cambios en el gráfico, como hacerlo cuadrado y cambiar el tamaño de la figura. Puedes modificar estos parámetros según sea necesario para obtener el resultado deseado.