Extraire ou renvoyer des valeurs de corrélation à l'aide d'une ellipse de densité à partir d'un générateur de graphes en JSLBonjour,
Je suis un peu nouveau à JSL. Je trace un graphique de données numériques vs catégorielles à l'aide de la fonction de création de graphiques dans JMP et j'ajoute une ellipse pour voir également une corrélation. J'utilise les scripts pour mes futurs tracés mais je veux personnaliser un peu en stockant les valeurs de corrélation (pointées par une flèche rouge dans la figure) quelque part dans une variable afin que je puisse l'utiliser dans certaines opérations logiques.Par exemple, si je veux tracer uniquement des graphiques dont la corrélation est supérieure à 0,45. Tout script, aide ou piste JSL serait apprécié. Après j'en ai essayé mais sans succès pour le moment.
Merci!
gb = dt << Graph Builder(
Variables( X( :"A_column"n ), Y( :"B_column"n ) ),
Elements(
Points( X, Y, Legend( 3 ) ),
Ellipse( X, Y, Legend( 4 ), Correlation( 1 ), Mean Point( 1 ) )
),
SendToReport(
Dispatch( {"Ellipse"}, "", OutlineBox, {Close( 0 )} ),
Dispatch( {"Pairwise Correlations"}, "", TableBox, {Sort By Column( 7, 1 )} )
)
);
thing_report = gb << report;
Show Properties( thing_report );
corr = biv << Get Correlation Matrix;
Show( corr );

Enregistrez la corrélation pointée par la flèche rouge.
AnalytiqueTableau de donnéesGraphiqueScriptles fenêtresRe : Extraire ou renvoyer des valeurs de corrélation à l'aide d'une ellipse de densité à partir d'un générateur de graphiques dans JSLJe ne sais pas si vous devriez vérifier une corrélation comme celle-ci entre les colonnes continues et nominales, mais ... vous pouvez exporter la corrélation du générateur de graphiques avec quelque chose comme ceci (je ne sais pas avec quelle facilité cela se cassera):
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
gb = dt << Graph Builder(
Size(535, 457),
Show Control Panel(0),
Variables(X(:height), Y(:weight)),
Elements(Points(X, Y, Legend(3)), Ellipse(X, Y, Legend(5), Correlation(1)))
);
ts = Report(gb)[Frame Box(1)] << Find Seg("TextSeg");
corr = ts << get text;
Comment j'y suis arrivé :
1. Générateur de graphiques créé et menu Personnaliser ouvert. J'ai remarqué que je pouvais changer la couleur des éléments de texte, alors j'ai fait

2. J'ai obtenu le script de mon générateur de graphiques avec du texte rouge et j'ai découvert que le changement de couleur affecte TextSeg()
Graph Builder(
Size(617, 457),
Show Control Panel(0),
Variables(X(:height), Y(:weight)),
Elements(Points(X, Y, Legend(3)), Ellipse(X, Y, Legend(5), Correlation(1))),
SendToReport(
Dispatch(
{},
"Graph Builder",
FrameBox,
{DispatchSeg(TextSeg(1), {Fill Color("Medium Dark Red")})}
)
)
)
3. Vérification de l'index de script pour le segment de texte et découverte d'un moyen d'obtenir la valeur

Re : Extraire ou renvoyer des valeurs de corrélation à l'aide d'une ellipse de densité à partir d'un générateur de graphiques dans JSLSalut Hadely Myers,
Merci beaucoup pour la solution. Dans mes données, une colonne est numérique et l'autre est catégorique (principalement des caractères). Je ne sais pas comment utiliser multivariée avec ce type de données. C'est la raison pour laquelle j'utilise le générateur de graphiques et le tracé d'ellipse de densité pour voir la corrélation là-bas. Malheureusement, la solution que vous fournissez n'a pas fonctionné sur mes données. En espérant votre réponse.
Merci encore!
Re : Extraire ou renvoyer des valeurs de corrélation à l'aide d'une ellipse de densité à partir d'un générateur de graphiques dans JSLSalut,
Je ne sais pas s'il existe un moyen d'extraire ce nombre d'un rapport Graph Builder, mais il est assez simple de le faire en utilisant Multivariate (voir le script ci-dessous).Est-ce que ça marche pour toi?
Names Default To Here(1);
dt=open("$SAMPLE_DATA/Tablet Production.jmp");
mul=dt<<MULTIVARIATE></MULTIVARIATE>