python画二分类混淆矩阵(confusion_matrix)代码
二分类任务,在最后的实验部分需要画混淆矩阵,来说明实验的结果。 import matplotlib.pyplot as plt guess = ["normal","cancer"] fact = [ "normal","cancer"] classes = list(set(fact)) classes.sort(reverse=True) r1=[[367,16],[33,384]] plt.figure(figsize=(12,10)) #设置plt窗口的大小 confusion =r1 print("confusion",confusion) plt.imshow(confusion, cmap=plt.cm.Blues) indices = range(len(confusion)) indices2 = range(3) plt.xticks(indices, classes,rotation=40,fontsize=18) plt.yticks([0.00,1.00], classes,fontsize=18) plt.ylim(1.5 , -0.5) #设置y的纵坐标的上下限 plt.title("Confusion matrix",fontdict={'weight':'normal','size': 18}) #设置color bar的标签大小 cb=plt.colorbar() cb.ax.tick_params(labelsize=18) plt.xlabel('Predict label',fontsize=18) plt.ylabel('True label',fontsize=18) print("len(confusion)",len(confusion)) for first_index in range(len(confusion)): for second_index in range(len(confusion[first_index])): if confusion[first_index][second_index]>200: color="w" else: color="black" plt.text(first_index, second_index, confusion[first_index][second_index],fontsize=18, color = color,verticalalignment='center',horizontalalignment='center',) plt.show()
显示效果如下: