You can plot the confusion matrix in Seaborn with the following code. The given examples help you to understand how to make a confusion matrix in Python using Seaborn. I highly recommend you “Python Crash Course Book” to learn Python.
Example 1: Simple Confusion Matrix
# Import the required libraries
import seaborn as sns
import matplotlib.pyplot as plt
# Data
a = [[70, 10],
[20, 30]]
# Select Confusion Matrix Size
plt.figure(figsize = (10,8))
# Create Confusion Matrix
b = sns.heatmap(a, annot=True)
# Set the Title
b.set(title='Confusion Matrix')
# Set the Labels
b.set(xlabel='Predicted', ylabel='Actual')
# Display the Confusion Matrix
plt.show()Output:

Example 2: Confusion Matrix Percentages
# Import the required libraries
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
# Data
a = [[70, 10],
[20, 30]]
# Select Confusion Matrix Size
plt.figure(figsize = (10,8))
# Create Confusion Matrix and show percentages
b = sns.heatmap(a/np.sum(a), annot=True, fmt='.1%', cmap='YlGnBu')
# Set the Title
b.set(title='Confusion Matrix')
# Set the Labels
b.set(xlabel='Predicted', ylabel='Actual')
# Display the Confusion Matrix
plt.show()Output:

Example 3: Show classes, values, percentages
# Import the required libraries
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
# NumPy array
a = np.array([[70, 10],
[20, 30]])
# Select Confusion Matrix Size
plt.figure(figsize = (10,8))
# Set names to show in boxes
classes = ["True Negative","False Positive","False Negative","True Positive"]
# Set values format
values = ["{0:0.0f}".format(x) for x in a.flatten()]
# Find percentages and set format
percentages = ["{0:.1%}".format(x) for x in a.flatten()/np.sum(a)]
# Combine classes, values and percentages to show
combined = [f"{i}\n{j}\n{k}" for i, j, k in zip(classes, values, percentages)]
combined = np.asarray(combined).reshape(2,2)
# Create Confusion Matrix
b = sns.heatmap(a, annot=combined, fmt="", cmap='YlGnBu')
# Set the Title
b.set(title='Confusion Matrix')
# Set the Labels
b.set(xlabel='Predicted', ylabel='Actual')
# Display the Confusion Matrix
plt.show()Output:

Example 4: Confusion Matrix Multiclass
# Import the required libraries
import seaborn as sns
import matplotlib.pyplot as plt
# Data
a = [[5, 0, 0, 0, 0],
[0, 10, 0, 0, 0],
[0, 0, 20, 0, 0],
[10, 0, 0 ,0, 0]]
# Select Confusion Matrix Size
plt.figure(figsize = (10,7))
# Create Confusion Matrix
b = sns.heatmap(a, annot=True, annot_kws={"size": 30},cmap='Blues')
# Set the Title
b.set(title='Confusion Matrix')
# Set the Labels
b.set(xlabel='Predicted', ylabel='Actual')
# Display the Confusion Matrix
plt.show()Output:



