Füllfarbe für mehrere ReferenzlinienHallo,
Ich habe der Achsenachse eines Diagramms mehrere Referenzlinien hinzugefügt.
Ich mache das, indem ich eine Referenzlinientabelle (DarkLight) basierend auf der Haupttabelle durchlaufe.
Oxygen consumption = SableData << Graph Builder(<BR />Size( 1322, 944 ),<BR />Variables(<BR />X( :Name( "Time since first dose-[hours]" ) ),<BR />Y( :Name( "VO2-[ml/min]" ) ),<BR />Overlay( :Treatment )<BR />),<BR />Elements( Points( X, Y, Legend( 4 ) ) )<BR />);<BR /><BR />For( i = 1, i <= N Rows( DarkLight ), i++,
Report( Oxygen consumption )[AxisBox( 1 )] << add ref line( DarkLight:name("Time since first dose-[hours]")[i], DarkLight:Phase[i] )
);
Gibt es überhaupt eine Möglichkeit, zwischen einigen Zeilen eine Füllfarbe hinzuzufügen (basierend auf den Spaltendaten in der DarkLight-Tabelle), um so anzuzeigen, wann es Tag oder Nacht ist?
Br. Julie
MassenanpassungBetreff: Füllfarbe für mehrere ReferenzlinienOk, das macht Sinn. Ich habe den Listenteil verpasst. Vielen Dank für die Antwort. Ich werde die Referenztabelle wie von Ihnen vorgeschlagen ändern.
Betreff: Füllfarbe für mehrere ReferenzlinienIhr Beispiel fügt keine zwei Referenzzeilen hinzu. Es fügt dem Bereich einen farbigen Bereich hinzu, wenn Sie eine Liste mit zwei Werten bereitstellen.
Möglicherweise müssen Sie die von Ihnen erstellte Referenzdatentabelle ändern. Dieses Beispiel soll den Ansatz veranschaulichen;
Names Default to Here( 1 );
// data table with reference line specifications
ref dt = New Table( "Reference Lines",
Add Rows( 5 ),
New Column( "Segment",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [1, 2, 3, 4, 5] )
),
New Column( "Low",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [50, 55, 60, 65, 70] )
),
New Column( "High",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [55, 60, 65, 70, 75] )
),
New Column( "Color",
Character,
"Nominal",
Set Values( {"Red", "Yellow", "Green", "Yellow", "Red"} )
)
);
data = Open( "$SAMPLE_DATA/Big Class.jmp" );
biv = data << Bivariate( Y( :weight ), X( :height ) );
x axis = Report( biv )[AxisBox(2)];
For Each Row( ref dt,
// draw colored regon
Eval( Eval Expr( x axis << Add Ref Line( { Expr( :Low ), Expr( :High ) }, "Solid", Expr( :Color ), , , 0.25 ) ) );
// draw border lines
Eval( Eval Expr( x axis << Add Ref Line( Expr( :Low ), "Solid", "Black" ) ) );
Eval( Eval Expr( x axis << Add Ref Line( Expr( :High ), "Solid", "Black" ) ) );
);Betreff: Füllfarbe für mehrere ReferenzlinienMein Problem betrifft diesen Teil in einem der Vorschläge:
Add Ref Line( {55, 65}, "Solid", "Black", "label", 1, 0.25 )Dies würde zwei Ref-Linien bei 55 und 65 hinzufügen und sie hätten die gleichen Eigenschaften (durchgezogen, schwarz usw.).
Wenn ich beispielsweise 100 Referenzlinien hinzufügen muss, die sich je nach dem spezifischen Datensatz ändern, der durch das Skript ausgeführt wird, und sie mit unterschiedlichen Eigenschaften angezeigt werden müssen (z. B. ist eine gepunktet und rot, die nächste ist durchgehend und blau usw.).
Wie würden Sie das tun, ohne jeden Wert im Skript manuell hinzufügen zu müssen?
Betreff: Füllfarbe für mehrere ReferenzlinienSie durchlaufen die Zeilen in Ihrer Referenztabelle und fügen jedes Mal eine Referenzlinie (Bereich) hinzu. Unsere Antworten betrafen nicht die Benutzeroberfläche, sondern nur Skripte. Daher ist nicht klar, warum Sie verwirrt sind oder nicht fortfahren können.
Betreff: Füllfarbe für mehrere ReferenzlinienVielen Dank für die Antworten, aber dazu müsste ich die Referenzzeilen manuell hinzufügen. Mein Datensatz ändert sich ständig, daher suche ich nach einer Lösung, bei der ich die Referenztabelle verwenden kann, die ich als Skript erstellt habe, jedes Mal, wenn ich meine Daten durch diese führe, und die Referenzlinien automatisch zum Diagramm hinzufüge.
Aber ich kann anscheinend keine Lösung finden, die den verschiedenen Ref-Linien unterschiedliche Eigenschaften hinzufügt, wenn sie auf diese Weise hinzugefügt werden.
Betreff: Füllfarbe für mehrere ReferenzlinienIch wusste, wie diese Nachricht funktionierte, aber als ich zum Scripting Index ging, um eine Referenz für Julie zu erhalten, stellte ich fest, dass sie unvollständig war:

Betreff: Füllfarbe für mehrere ReferenzlinienReferenzlinien können einen Wertebereich sowie eine Transparenz verwenden, um die Farbe mit dem Hintergrund zu verschmelzen.Dieses Beispiel mit Big-Class-Beispieldaten erzeugt das folgende Bild:
dt = Open("$SAMPLE_DATA/Big Class.jmp");
biv = dt << Bivariate(
Y( :weight ),
X( :height ),
Fit Line( {Line Color( {212, 73, 88} )} )
);
(biv<<REPORT></REPORT>
