import matplotlib.pyplot as plt
from sklearn.metrics import precision_score, recall_score, f1_score
# Example actual and predicted labels
actual = [0, 1, 1, 0, 1, 0, 1, 1]
predicted = [0, 1, 0, 0, 1, 0, 1, 0]
# Compute metrics
precision = precision_score(actual, predicted)
recall = recall_score(actual, predicted)
f1 = f1_score(actual, predicted)
# Plot
metrics = ['Precision', 'Recall', 'F1 Score']
values = [precision, recall, f1]
plt.figure(figsize=(6, 4))
plt.bar(metrics, values, color=['skyblue', 'lightgreen', 'salmon'])
plt.ylim(0, 1)
plt.title('Precision, Recall, and F1 Score')
plt.ylabel('Score')
for i, v in enumerate(values):
plt.text(i, v + 0.02, f"{v:.2f}", ha='center', fontweight='bold')
plt.show()