Couleur de remplissage pour plusieurs lignes de référenceSalut,
J'ai ajouté plusieurs lignes de référence à l'axe de l'axe d'un graphique.
Je fais cela en parcourant une table de lignes de référence (DarkLight) basée sur la table principale.
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] )
);
Puis-je ajouter une couleur de remplissage entre certaines lignes (basée sur les données de colonne dans la table DarkLight) indiquant ainsi quand il fait jour ou nuit?
Frère Julie
GraphiqueScriptRe : Couleur de remplissage pour plusieurs lignes de référenceOk c'est logique. J'ai raté la partie liste. Merci pour la réponse - je vais changer le tableau de référence comme vous le suggérez.
Re : Couleur de remplissage pour plusieurs lignes de référenceVotre exemple n'ajoute pas deux lignes de références. Il ajoute une région colorée dans la plage lorsque vous fournissez une liste avec deux valeurs.
Vous devrez peut-être modifier la table de données de référence que vous construisez. Cet exemple doit illustrer l'approche ;
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" ) ) );
);Re : Couleur de remplissage pour plusieurs lignes de référenceMon problème concerne cette partie dans l'une des suggestions:
Add Ref Line( {55, 65}, "Solid", "Black", "label", 1, 0.25 )Cela ajouterait deux lignes de référence à 55 et 65 et elles ont les mêmes propriétés (solide, noir, etc.).
Si j'ai besoin d'ajouter, par exemple, 100 lignes de référence qui changent en fonction de l'ensemble de données spécifique exécuté dans le script et qu'elles doivent être affichées avec des propriétés différentes (par exemple, l'une est pointillée et rouge, la suivante est solide et bleue, etc.).
Comment feriez-vous cela sans avoir à ajouter manuellement chaque valeur dans le script ?
Re : Couleur de remplissage pour plusieurs lignes de référenceVous parcourez les lignes de votre table de référence et ajoutez une ligne de référence (plage) à chaque fois. Nos réponses n'impliquaient pas l'interface utilisateur, uniquement des scripts, il n'est donc pas clair pourquoi vous êtes confus ou incapable de continuer.
Re : Couleur de remplissage pour plusieurs lignes de référenceMerci pour les réponses, mais cela nécessiterait que j'ajoute manuellement les lignes de référence. Mon ensemble de données change constamment, je recherche donc une solution où je peux utiliser la table de référence que j'ai scriptée pour être créée chaque fois que j'exécute mes données et ajoute automatiquement les lignes de référence au graphique.
Mais je n'arrive pas à trouver une solution qui ajoute différentes propriétés aux différentes lignes de référence lorsqu'elles sont ajoutées comme ça.
Re : Couleur de remplissage pour plusieurs lignes de référenceJe savais comment ce message fonctionnait, mais lorsque je suis allé à l'Index des scripts pour obtenir une référence pour Julie, j'ai découvert qu'il était incomplet :

Re : Couleur de remplissage pour plusieurs lignes de référenceLes lignes de référence peuvent utiliser une plage de valeurs, ainsi qu'une transparence pour mélanger la couleur avec l'arrière-plan.Cet exemple utilisant des exemples de données Big Class produit l'image ci-dessous :
dt = Open("$SAMPLE_DATA/Big Class.jmp");
biv = dt << Bivariate(
Y( :weight ),
X( :height ),
Fit Line( {Line Color( {212, 73, 88} )} )
);
(biv<<REPORT></REPORT>
