sklearn.metrics.plot_det_curve(estimator, X, y, *, sample_weight=None, response_method='auto', name=None, ax=None, pos_label=None, **kwargs)[source]

Plot detection error tradeoff (DET) curve.

Extra keyword arguments will be passed to matplotlib’s plot.

Read more in the User Guide.

New in version 0.24.

estimatorestimator instance

Fitted classifier or a fitted Pipeline in which the last estimator is a classifier.

X{array-like, sparse matrix} of shape (n_samples, n_features)

Input values.

yarray-like of shape (n_samples,)

Target values.

sample_weightarray-like of shape (n_samples,), default=None

Sample weights.

response_method{‘predict_proba’, ‘decision_function’, ‘auto’} default=’auto’

Specifies whether to use predict_proba or decision_function as the predicted target response. If set to ‘auto’, predict_proba is tried first and if it does not exist decision_function is tried next.

namestr, default=None

Name of DET curve for labeling. If None, use the name of the estimator.

axmatplotlib axes, default=None

Axes object to plot on. If None, a new figure and axes is created.

pos_labelstr or int, default=None

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.


Object that stores computed values.

See also


Compute error rates for different probability thresholds.


DET curve visualization.


Plot Receiver operating characteristic (ROC) curve.


>>> import matplotlib.pyplot as plt  
>>> from sklearn import datasets, metrics, model_selection, svm
>>> X, y = datasets.make_classification(random_state=0)
>>> X_train, X_test, y_train, y_test = model_selection.train_test_split(
...     X, y, random_state=0)
>>> clf = svm.SVC(random_state=0)
>>>, y_train)
>>> metrics.plot_det_curve(clf, X_test, y_test)  

Examples using sklearn.metrics.plot_det_curve