Sie können mit den folgenden Skripten ein Diagramm erstellen, das die Referenzlinie und zwei ROC-Kurvenlinien in ein neues Diagramm einfügt.
Die Werte für die ROC-Kurven erhalten Sie, indem Sie mit der rechten Maustaste auf das ROC-Kurvendiagramm klicken, das Sie im Analysefenster erhalten haben, und „Anpassen“ wählen. Anschließend erhalten Sie im Skriptfenster das Skript der Linie. Sie können diese kopieren und in das unten stehende Skript einfügen und dabei die Linien ersetzen, die sich derzeit dort befinden. Wiederholen Sie dies für jede ROC-Kurve, die Sie hinzufügen möchten.
Hoffe, das hilft.

New Window( "ROC Curve",
Graph Box(
FrameSize( 600, 600 ),
X Scale( 0, 1 ),
Y Scale( 0, 1 ),
//add axis titles
xName( "1-Specificity" ),
yName( "Sensitivity" ),
//add reference line
Line Style( 0 );
Y Function( XTemp , XTemp );
//add first line
Line Style( 1 );
Text Size( 12 );
Text({0.45, 0.2}, "......... Group, BMI; AUC = 0.88");
pen size(2);
Line(
[0, 0, 0, 0, 0, 0, 0, 0.153846153846154, 0.230769230769231, 0.230769230769231,
0.307692307692308, 0.384615384615385, 0.384615384615385, 0.461538461538462,
0.461538461538462, 0.538461538461539, 0.615384615384615, 0.692307692307692,
0.769230769230769, 0.846153846153846, 0.923076923076923, 1, 1],
[0, 0.111111111111111, 0.222222222222222, 0.333333333333333, 0.444444444444444,
0.555555555555556, 0.666666666666667, 0.666666666666667, 0.666666666666667,
0.777777777777778, 0.777777777777778, 0.777777777777778, 0.888888888888889,
0.888888888888889, 1, 1, 1, 1, 1, 1, 1, 1, 1]
);
//add second line
Line Style( 4 );
Text Size( 12 );
Text( {0.45, 0.1}, "_.._.._.._ Group, BMI, Endo; AUC = 0.96" );
Line(
[0, 0, 0, 0, 0, 0, 0, 0.0833333333333333, 0.0833333333333333, 0.166666666666667,
0.25, 0.25, 0.333333333333333, 0.416666666666667, 0.5, 0.583333333333333,
0.666666666666667, 0.75, 0.833333333333333, 1, 1],
[0, 0.222222222222222, 0.333333333333333, 0.444444444444444, 0.555555555555556,
0.666666666666667, 0.777777777777778, 0.777777777777778, 0.888888888888889,
0.888888888888889, 0.888888888888889, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
);
);
);Eine Möglichkeit besteht darin, die ROC-Tabelle zu verwenden, die nach der Erstellung des ROC-Diagramms vorhanden ist. Machen Sie die ROC-Tabelle für jeden Test grundsätzlich zu einer Datentabelle, verknüpfen Sie sie mithilfe der Option zum Erstellen einer neuen Spalte, die die Quelltabellen identifiziert, und verwenden Sie dann „Overlay-Diagramm“ mit den Diagrammen, die nach Quelltabelle gruppiert sind, und aktivieren Sie „Overlay nach Gruppen“. Sie können dies interaktiv tun oder mit etwas wie dem folgenden Beispiel, das ich zusammengestellt habe, indem ich nach der interaktiven Ausführung Skripte gespeichert habe:
dt = öffnen("$SAMPLE_DATA/Fitness.jmp");
fm = dt << Modell anpassen(
Y( :Geschlecht ),
Effekte( :Oxy ),
Persönlichkeit (Nominale Logistik),
Modell ausführen (
Positiv
Ebene( "M" ),
Likelihood-Ratio-Tests( 1 ),
Wald
Tests( 0 ),
Republik China
Kurve( 1 ),
Logistik
Handlung( 1 ),
SendenAnBericht(
Versand( {"Empfängerbetrieb
Charakteristisch"}, "ROC-Tabelle", OutlineBox, Close( 0 ) )
)
)
);
fmReport = Bericht( fm );
fmReport["ROC Table"][Table Box( 1 )] << in Daten umwandeln
Tisch;
Datentabelle (1) << Name festlegen ("Oxy");
fm = dt << Modell anpassen(
Y( :Geschlecht ),
Effekte( :Laufzeit ),
Persönlichkeit (Nominale Logistik),
Modell ausführen (
Positiv
Ebene( "M" ),
Likelihood-Ratio-Tests( 1 ),
Wald
Tests( 0 ),
Republik China
Kurve( 1 ),
Logistik
Handlung( 1 ),
SendenAnBericht(
Versand( {"Empfängerbetrieb
Charakteristisch"}, "ROC-Tabelle", OutlineBox, Close( 0 ) )
)
)
);
fmReport = Bericht( fm );
fmReport["ROC Table"][Table Box( 1 )] << in Daten umwandeln
Tisch;
Datentabelle (1) << Name festlegen ("Laufzeit");
Verketten(
Datentabelle( "Laufzeit" ),
Datentabelle( "Oxy" ),
Ausgabetabelle( "Beide" ),
Quellspalte erstellen
);
Überlagerungsdiagramm(
X( :Name( "1-Spezifität" ) ),
Y( :Empfindlichkeit ),
Gruppierung (: Quelltabelle ),
Overlay-Gruppen,
Schritt ( 1 ),
Punkte anzeigen( 0 ),
SendenAnBericht(
Versenden(
{},
"106",
ScaleBox( 2 ),
{Format( "Beste", 10 ), Hauptraster anzeigen(
1 )}
),
Versenden(
{}, "101", ScaleBox( 2 ), {Hauptraster anzeigen( 1 )} )
)
);
Stil="Rand unten: 0,0001pt; Zeilenhöhe: normal;">
Stil="Schriftgröße: 10pt; Schriftfamilie: "Courier New"; Farbe: Marineblau;">
Stil="Schriftgröße: 10pt; Schriftfamilie: "Courier New"; Farbe: schwarz;">