The plot function creates a plot of performance evaluation measures.

# S3 method for sscurves
plot(x, y = NULL, ...)

# S3 method for mscurves
plot(x, y = NULL, ...)

# S3 method for smcurves
plot(x, y = NULL, ...)

# S3 method for mmcurves
plot(x, y = NULL, ...)

# S3 method for sspoints
plot(x, y = NULL, ...)

# S3 method for mspoints
plot(x, y = NULL, ...)

# S3 method for smpoints
plot(x, y = NULL, ...)

# S3 method for mmpoints
plot(x, y = NULL, ...)

Arguments

x

An S3 object generated by evalmod. The plot function accepts the following S3 objects.

  1. ROC and Precision-Recall curves (mode = "rocprc")

    S3 object# of models# of test datasets
    sscurvessinglesingle
    mscurvesmultiplesingle
    smcurvessinglemultiple
    mmcurvesmultiplemultiple
  2. Basic evaluation measures (mode = "basic")

    S3 object# of models# of test datasets
    sspointssinglesingle
    mspointsmultiplesingle
    smpointssinglemultiple
    mmpointsmultiplemultiple

See the Value section of evalmod for more details.

y

Equivalent with curvetype.

...

All the following arguments can be specified.

curvetype

  1. ROC and Precision-Recall curves (mode = "rocprc")

    curvetypedescription
    ROCROC curve
    PRCPrecision-Recall curve

    Multiple curvetype can be combined, such as c("ROC", "PRC").

  2. Basic evaluation measures (mode = "basic")

    curvetypedescription
    errorNormalized ranks vs. error rate
    accuracyNormalized ranks vs. accuracy
    specificityNormalized ranks vs. specificity
    sensitivityNormalized ranks vs. sensitivity
    precisionNormalized ranks vs. precision
    mccNormalized ranks vs. Matthews correlation coefficient
    fscoreNormalized ranks vs. F-score

    Multiple curvetype can be combined, such as c("precision", "sensitivity").

type

A character to specify the line type as follows.

"l"

lines

"p"

points

"b"

both lines and points

show_cb

A Boolean value to specify whether point-wise confidence bounds are drawn. It is effective only when calc_avg of the evalmod function is set to TRUE.

raw_curves

A Boolean value to specify whether raw curves are shown instead of the average curve. It is effective only when raw_curves of the evalmod function is set to TRUE.

show_legend

A Boolean value to specify whether the legend is shown.

Value

The plot function shows a plot and returns NULL.

See also

evalmod for generating an S3 object. autoplot for plotting the equivalent curves with ggplot2.

Examples

# \dontrun{ ################################################## ### Single model & single test dataset ### ## Load a dataset with 10 positives and 10 negatives data(P10N10) ## Generate an sscurve object that contains ROC and Precision-Recall curves sscurves <- evalmod(scores = P10N10$scores, labels = P10N10$labels) ## Plot both ROC and Precision-Recall curves plot(sscurves)
## Plot a ROC curve plot(sscurves, curvetype = "ROC")
## Plot a Precision-Recall curve plot(sscurves, curvetype = "PRC")
## Generate an sspoints object that contains basic evaluation measures sspoints <- evalmod(mode = "basic", scores = P10N10$scores, labels = P10N10$labels) ## Plot normalized ranks vs. basic evaluation measures plot(sspoints)
## Plot normalized ranks vs. precision plot(sspoints, curvetype = "precision")
################################################## ### Multiple models & single test dataset ### ## Create sample datasets with 100 positives and 100 negatives samps <- create_sim_samples(1, 100, 100, "all") mdat <- mmdata(samps[["scores"]], samps[["labels"]], modnames = samps[["modnames"]]) ## Generate an mscurve object that contains ROC and Precision-Recall curves mscurves <- evalmod(mdat) ## Plot both ROC and Precision-Recall curves plot(mscurves)
## Hide the legend plot(mscurves, show_legend = FALSE)
## Generate an mspoints object that contains basic evaluation measures mspoints <- evalmod(mdat, mode = "basic") ## Plot normalized ranks vs. basic evaluation measures plot(mspoints)
## Hide the legend plot(mspoints, show_legend = FALSE)
################################################## ### Single model & multiple test datasets ### ## Create sample datasets with 100 positives and 100 negatives samps <- create_sim_samples(10, 100, 100, "good_er") mdat <- mmdata(samps[["scores"]], samps[["labels"]], modnames = samps[["modnames"]], dsids = samps[["dsids"]]) ## Generate an smcurve object that contains ROC and Precision-Recall curves smcurves <- evalmod(mdat, raw_curves = TRUE) ## Plot average ROC and Precision-Recall curves plot(smcurves, raw_curves = FALSE)
## Hide confidence bounds plot(smcurves, raw_curves = FALSE, show_cb = FALSE)
## Plot raw ROC and Precision-Recall curves plot(smcurves, raw_curves = TRUE, show_cb = FALSE)
## Generate an smpoints object that contains basic evaluation measures smpoints <- evalmod(mdat, mode = "basic") ## Plot normalized ranks vs. average basic evaluation measures plot(smpoints)
################################################## ### Multiple models & multiple test datasets ### ## Create sample datasets with 100 positives and 100 negatives samps <- create_sim_samples(10, 100, 100, "all") mdat <- mmdata(samps[["scores"]], samps[["labels"]], modnames = samps[["modnames"]], dsids = samps[["dsids"]]) ## Generate an mscurve object that contains ROC and Precision-Recall curves mmcurves <- evalmod(mdat, raw_curves = TRUE) ## Plot average ROC and Precision-Recall curves plot(mmcurves, raw_curves = FALSE)
## Show confidence bounds plot(mmcurves, raw_curves = FALSE, show_cb = TRUE)
## Plot raw ROC and Precision-Recall curves plot(mmcurves, raw_curves = TRUE)
## Generate an mmpoints object that contains basic evaluation measures mmpoints <- evalmod(mdat, mode = "basic") ## Plot normalized ranks vs. average basic evaluation measures plot(mmpoints)
################################################## ### N-fold cross validation datasets ### ## Load test data data(M2N50F5) ## Speficy nessesary columns to create mdat cvdat <- mmdata(nfold_df = M2N50F5, score_cols = c(1, 2), lab_col = 3, fold_col = 4, modnames = c("m1", "m2"), dsids = 1:5) ## Generate an mmcurve object that contains ROC and Precision-Recall curves cvcurves <- evalmod(cvdat) ## Average ROC and Precision-Recall curves plot(cvcurves)
## Show confidence bounds plot(cvcurves, show_cb = TRUE)
## Generate an mmpoints object that contains basic evaluation measures cvpoints <- evalmod(cvdat, mode = "basic") ## Normalized ranks vs. average basic evaluation measures plot(cvpoints)
# }