Tracés d'intervalles de Graph BuilderSalut,
Lorsque vous utilisez le générateur de graphiques en mode graphique à barres, le type de barre étant défini sur Intervalle, nous pouvons afficher de bons intervalles de confiance bilatéraux et comparer/contraster diverses propriétés. Dans certains cas, je préférerais faire la même chose mais avec une confiance unilatérale. Cependant, définir "l'autre côté" sur une valeur très élevée n'est pas souhaitable car cela perturbe l'échelle du générateur de graphes pour la variable Y. Nous avons actuellement convergé sur la définition de "l'autre côté" de l'intervalle unilatéral égal à la moyenne, mais préférerions que la "barre transversale" ne s'affiche pas dans ce cas. Ainsi, l'image suivante montre un intervalle supérieur unilatéral, mais le générateur de graphiques affiche toujours la "barre transversale d'intervalle inférieur" car les deux barres transversales sont requises dans l'implémentation actuelle du type d'intervalle.

Existe-t-il un meilleur moyen d'afficher un ensemble d'intervalles unilatéraux dans Graph Builder ? Pourrait être une option pour définir la couleur de la moitié inférieure de l'intervalle pour qu'elle soit différente de la moitié supérieure de l'intervalle - avec une moitié en noir et l'autre moitié en blanc (ou la couleur d'arrière-plan du graphique s'il existe un moyen simple de le faire )... Pourrait être une option pour contrôler si les barres transversales sont autorisées à s'afficher... Je ne sais pas !
Bref, on cherche des idées mais on souhaite une certaine souplesse pour montrer des intervalles à sens unique !
Merci,
Michael
GraphiqueInterface utilisateurRe : Tracés d'intervalles de Graph Builder - Statut changé en : En développementNous ajouterons une option dans JMP 17 pour prendre en charge les intervalles unilatéraux.
Re: Tracés d'intervalles de Graph BuilderJe peux confirmer que nous avons résolu ce problème dans ce cas d'utilisation particulier en utilisant @XanGregg le script. Je pouvais voir des experts non scripteurs bénéficier d'intervalles unilatéraux dans d'autres scénarios et il serait donc toujours bon d'examiner les options avec la propriété Interval qui permettraient des options unilatérales supérieures et unilatérales inférieures en plus du manuel- spécifié et les calculs bilatéraux automatiques.
Re: Tracés d'intervalles de Graph BuilderC'est très cool. Permettez-moi de le transmettre, mais je pense que cela fonctionnera bien dans le projet avec lequel nous voulons l'utiliser.
Re: Tracés d'intervalles de Graph BuilderSi vous avez JMP 16 et que vous êtes aventureux, vous pouvez essayer la nouvelle fonctionnalité d'expression de forme dans l'élément Points, où vous pouvez remplacer l'intégralité du dessin du marqueur par des commandes JSL. Voici un exemple qui dessine une forme en T.
Graph Builder(
Size( 579, 502 ),
Variables( Y( :Column 1 ) ),
Elements(
Points(
Y,
Legend( 2 ),
Summary Statistic( "Mean" ),
Set Shape Expression(
Expr(
Function( {this seg, this row, x, y, size, row state},
Local( {se},
se = Col Std Dev( :column 1 ) /
Sqrt( Col Number( :column 1 ) );
Line(
Eval List( {x, y} ),
Eval List( {x, y + 2.576 * se} )
);
Line(
Eval List( {x - 0.2, y + 2.576 * se} ),
Eval List( {x + 0.2, y + 2.576 * se} )
);
)
)
)
)
),
Points( Y, Legend( 3 ) )
)
);
Re: Tracés d'intervalles de Graph BuilderMerci pour l'exemple détaillé, Michael. Je n'ai pas de bonne réponse, et j'espère que nous pourrons offrir quelque chose de mieux à l'avenir.
Pour l'instant, une idée est de superposer deux intervalles, un sans endcaps et un avec une hauteur nulle (min==max). Vous pouvez désactiver les extrémités dans les paramètres de personnalisation de la barre d'erreur. Pour créer un intervalle de hauteur nulle, vous pouvez créer une autre colonne synthétique contenant une seule valeur et définir la taille du marqueur sur point.
Pour le graphique ci-dessous, je l'ai fait après avoir appelé la nouvelle colonne "One Sided Interval 2".
Une autre idée consiste à superposer deux éléments de barre, l'un utilisant le style float et l'autre utilisant le style range, avec des largeurs personnalisées.

Graph Builder(
Set α Level( 0.01 ),
Variables(
Y( :One Sided Interval ),
Y( :Column 1, Position( 1 ) ),
Y( :One Sided Interval 2, Position( 1 ) )
),
Elements(
Points(
Y( 1 ),
Legend( 2 ),
Summary Statistic( "Median" ),
Error Interval( "Range" )
),
Points( Y( 2 ), Legend( 3 ) ),
Points(
Y( 3 ),
Legend( 4 ),
Summary Statistic( "Mean" ),
Error Interval( "Range" )
)
),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
2,
Properties(
0,
{Line Color( 5 )},
Item ID( "Median(One Sided Interval)", 1 )
)
), Legend Model(
3,
Properties( 0, {Line Color( 0 )}, Item ID( "Column 1", 1 ) )
), Legend Model(
4,
Properties(
0,
{Line Color( 5 ), Marker Size( 0 )},
Item ID( "Mean(One Sided Interval 2)", 1 )
)
)}
),
Dispatch(
{},
"Graph Builder",
FrameBox,
{Reference Line Order( 3 ), DispatchSeg(
BarSeg( 1 ),
{Error Bar Cap( "None" )}
)}
)
)
)
Re: Tracés d'intervalles de Graph BuilderVoici un exemple de fichier de données qui montre pourquoi cela serait utile.
New Table( "one sided intervals are hard to make",
Add Rows( 13 ),
New Script(
"Two Sided Interval - easy!",
Graph Builder(
Set α Level( 0.01 ),
Variables( Y( :Column 1 ) ),
Elements(
Points(
Y,
Legend( 2 ),
Summary Statistic( "Mean" ),
Error Interval( "Confidence Interval" )
),
Points( Y, Legend( 3 ) )
),
SendToReport(
Dispatch(
{},
"Column 1",
ScaleBox,
{Add Ref Line( 0, "Solid", "Black", "", 1 )}
),
Dispatch(
{},
"Graph Builder",
FrameBox,
{Reference Line Order( 3 )}
)
)
)
),
New Script(
"Attempt at One Sided Interval",
Graph Builder(
Set α Level( 0.01 ),
Variables( Y( :One Sided Interval ), Y( :Column 1, Position( 1 ) ) ),
Elements(
Points(
Y( 1 ),
Legend( 2 ),
Summary Statistic( "Median" ),
Error Interval( "Range" )
),
Points( Y( 2 ), Legend( 3 ) )
),
SendToReport(
Dispatch(
{},
"Graph Builder",
FrameBox,
{Reference Line Order( 4 )}
)
)
)
),
New Script(
"Second Attempt at One-Sided Interval - Manually drawing white lines over the lower bound",
Graph Builder(
Set α Level( 0.01 ),
Variables( Y( :One Sided Interval ), Y( :Column 1, Position( 1 ) ) ),
Elements(
Points(
Y( 1 ),
Legend( 2 ),
Summary Statistic( "Median" ),
Error Interval( "Range" )
),
Points( Y( 2 ), Legend( 3 ) )
),
SendToReport(
Dispatch(
{},
"Graph Builder",
FrameBox,
{Reference Line Order( 4 ),
{Add Line Annotation(
Line( {237, 300}, {183, 300} ),
Color( "White" ),
Thick( 1 )
), Add Line Annotation(
Line( {244, 299}, {299, 299} ),
Color( "White" ),
Thick( 1 )
)}}
)
)
)
),
New Column( "Column 1",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values(
[0.01, 0.02, 0.04, 0.07, 0.1, 0.13, 0.18, 0.25, 0.4, 0.67, 0.93, 1.25, 2
]
),
Set Display Width( 75 )
),
New Column( "One Sided Interval",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values(
[0.4653846, 0.4653846, 0.913051508927084, ., ., ., ., ., ., ., ., ., .]
),
Set Display Width( 137 )
),
New Column( "Comment",
Character,
"Nominal",
Set Values(
{"Mean", "Mean",
"manually calculated upper bound: .4653846 + t Quantile(0.99,12) * 0.6020467/sqrt(13)",
"", "", "", "", "", "", "", "", "", ""}
),
Set Display Width( 430 )
)
)Re: Graphiques d'intervalles Graph Builder - Statut modifié : Livré