ROC Curve visualization.
It is recommend to use from_estimator or from_predictions to create a RocCurveDisplay. All parameters are stored as attributes.
Read more in the User Guide.
False positive rate.
True positive rate.
Area under ROC curve. If None, the roc_auc score is not shown.
Name of estimator. If None, the estimator name is not shown.
The class considered as the positive class when computing the roc auc metrics. By default, estimators.classes_[1] is considered as the positive class.
Added in version 0.24.
ROC Curve.
The chance level line. It is None if the chance level is not plotted.
Added in version 1.3.
Axes with ROC Curve.
Figure containing the curve.
See also
roc_curveCompute Receiver operating characteristic (ROC) curve.
RocCurveDisplay.from_estimatorPlot Receiver Operating Characteristic (ROC) curve given an estimator and some data.
RocCurveDisplay.from_predictionsPlot Receiver Operating Characteristic (ROC) curve given the true and predicted values.
roc_auc_scoreCompute the area under the ROC curve.
>>> import matplotlib.pyplot as plt >>> import numpy as np >>> from sklearn import metrics >>> y = np.array([0, 0, 1, 1]) >>> pred = np.array([0.1, 0.4, 0.35, 0.8]) >>> fpr, tpr, thresholds = metrics.roc_curve(y, pred) >>> roc_auc = metrics.auc(fpr, tpr) >>> display = metrics.RocCurveDisplay(fpr=fpr, tpr=tpr, roc_auc=roc_auc, ... estimator_name='example estimator') >>> display.plot() <...> >>> plt.show()
Create a ROC Curve display from an estimator.
Fitted classifier or a fitted Pipeline in which the last estimator is a classifier.
Input values.
Target values.
Sample weights.
Whether to drop some suboptimal thresholds which would not appear on a plotted ROC curve. This is useful in order to create lighter ROC curves.
Specifies whether to use predict_proba or decision_function as the target response. If set to ‘auto’, predict_proba is tried first and if it does not exist decision_function is tried next.
The class considered as the positive class when computing the roc auc metrics. By default, estimators.classes_[1] is considered as the positive class.
Name of ROC Curve for labeling. If None, use the name of the estimator.
Axes object to plot on. If None, a new figure and axes is created.
Whether to plot the chance level.
Added in version 1.3.
Keyword arguments to be passed to matplotlib’s plot for rendering the chance level line.
Added in version 1.3.
Whether to remove the top and right spines from the plot.
Added in version 1.6.
Keyword arguments to be passed to matplotlib’s plot.
RocCurveDisplay
The ROC Curve display.
See also
roc_curveCompute Receiver operating characteristic (ROC) curve.
RocCurveDisplay.from_predictionsROC Curve visualization given the probabilities of scores of a classifier.
roc_auc_scoreCompute the area under the ROC curve.
>>> import matplotlib.pyplot as plt >>> from sklearn.datasets import make_classification >>> from sklearn.metrics import RocCurveDisplay >>> from sklearn.model_selection import train_test_split >>> from sklearn.svm import SVC >>> X, y = make_classification(random_state=0) >>> X_train, X_test, y_train, y_test = train_test_split( ... X, y, random_state=0) >>> clf = SVC(random_state=0).fit(X_train, y_train) >>> RocCurveDisplay.from_estimator( ... clf, X_test, y_test) <...> >>> plt.show()
Plot ROC curve given the true and predicted values.
Read more in the User Guide.
Added in version 1.0.
True labels.
Target scores, can either be probability estimates of the positive class, confidence values, or non-thresholded measure of decisions (as returned by “decision_function” on some classifiers).
Sample weights.
Whether to drop some suboptimal thresholds which would not appear on a plotted ROC curve. This is useful in order to create lighter ROC curves.
The label of the positive class. When pos_label=None, if y_true is in {-1, 1} or {0, 1}, pos_label is set to 1, otherwise an error will be raised.
Name of ROC curve for labeling. If None, name will be set to "Classifier".
Axes object to plot on. If None, a new figure and axes is created.
Whether to plot the chance level.
Added in version 1.3.
Keyword arguments to be passed to matplotlib’s plot for rendering the chance level line.
Added in version 1.3.
Whether to remove the top and right spines from the plot.
Added in version 1.6.
Additional keywords arguments passed to matplotlib plot function.
RocCurveDisplay
Object that stores computed values.
See also
roc_curveCompute Receiver operating characteristic (ROC) curve.
RocCurveDisplay.from_estimatorROC Curve visualization given an estimator and some data.
roc_auc_scoreCompute the area under the ROC curve.
>>> import matplotlib.pyplot as plt >>> from sklearn.datasets import make_classification >>> from sklearn.metrics import RocCurveDisplay >>> from sklearn.model_selection import train_test_split >>> from sklearn.svm import SVC >>> X, y = make_classification(random_state=0) >>> X_train, X_test, y_train, y_test = train_test_split( ... X, y, random_state=0) >>> clf = SVC(random_state=0).fit(X_train, y_train) >>> y_pred = clf.decision_function(X_test) >>> RocCurveDisplay.from_predictions( ... y_test, y_pred) <...> >>> plt.show()
Plot visualization.
Extra keyword arguments will be passed to matplotlib’s plot.
Axes object to plot on. If None, a new figure and axes is created.
Name of ROC Curve for labeling. If None, use estimator_name if not None, otherwise no labeling is shown.
Whether to plot the chance level.
Added in version 1.3.
Keyword arguments to be passed to matplotlib’s plot for rendering the chance level line.
Added in version 1.3.
Whether to remove the top and right spines from the plot.
Added in version 1.6.
Keyword arguments to be passed to matplotlib’s plot.
RocCurveDisplay
Object that stores computed values.
© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/modules/generated/sklearn.metrics.RocCurveDisplay.html