from sklearn.datasets import load_breast_cancer data = load_breast_cancer() X = data.data y = data.target from sklearn.model_selection import train_test_split X_train, X_test, y_train, y_test = train_test_split(X,y,test_size=0.2) from sklearn.linear_model import LogisticRegression clf = LogisticRegression() clf.fit(X_train, y_train) from sklearn.metrics import accuracy_score, roc_curve import matplotlib.pyplot as plt from sklearn.metrics import confusion_matrix fprs = [] tprs = [] ths = [] plt.rcParams['figure.figsize'] = [10, 5] for th in range(-10,10): y_pred = (clf.decision_function(X_test)>th).astype(int) tn, fp, fn, tp = confusion_matrix(y_test, y_pred).ravel() recall = tp/(fn+tp) precision = tp/(tp+fp) fpr = fp/(tn+fp)<feff> tpr = tp/(fn+tp) fprs.append(fpr) tprs.append(tpr) ths.append(th) plt.plot(fprs,tprs,'o') for i in range(len(ths)): plt.annotate(str(ths[i]),(fprs[i],tprs[i]),fontsize=20)