Analyser les noms de colonne dans le graphique<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Cette question est similaire à un autre article sur la façon d’analyser les noms de colonnes dans un graphique.
Je souhaite créer un graphique à barres simple dans lequel mes colonnes Y sont déterminées par la sélection de l'utilisateur dans une zone de liste col.
Je ne peux pas trouver un moyen d'utiliser parse et / ou expr pour mettre mes sélections d'utilisateurs dans l'instruction graphique.
Pour d’autres types de graphiques (comme la superposition), j’ai pu utiliser une liste de colonnes pour le faire, mais je ne peux pas.
semble le faire avec graphique.
Ce code génère le graphique lorsque les Ycols sont connus:
dt = Open ( "$ ENGLISH_SAMPLE_DATA / Big Class.jmp");
Graphique ( X ( : prénom )
,
Y ( : la taille , : poids )
)
Lorsque l'utilisateur a sélectionné YCols, je dois faire quelque chose comme ceci:
Chart1Expr = expr (Chart (
X (: nom),
Y (ycols)
));
replaceycols = expr (: height,: weight) <- cela ne fonctionne pas, mais c'est comme ce dont j'ai besoin newchartexpr = substitute (nom expr (Chart1Expr), expr (ycols), expr (replaceycols));
newchartexpr;
Analyser les noms de colonne dans le graphiqueJe vous remercie! J'avais raté l'étape Eval quand j'ai essayé de la nourrir d'une liste.
Analyser les noms de colonne dans le graphiqueY () peut accepter une liste en tant qu'argument, même lorsque les noms de colonne sont représentés par des chaînes. Cet exemple fonctionne dans JMP9:
dt = Ouvrir ( "$ ENGLISH_SAMPLE_DATA / Big Class.jmp" ) ;
Ycols = { "la taille" , "poids" } ;
Graphique ( X ( : sexe ) , Y ( Eval ( Ycols ) ) ) ;
Cependant, si vous devez spécifier des statistiques, cela devient un peu plus compliqué. Une méthode consiste à construire une liste d'expressions en parcourant une liste (générée par l'utilisateur, par exemple) comme dans l'exemple ci-dessous:
dt = Ouvrir ( "$ ENGLISH_SAMPLE_DATA / Big Class.jmp" ) ;
Ycols = {} ;
Pour ( je = 1 , je <= N articles ( votre liste ) , je ++,
Insérer dans ( Ycols , Analyser ( "Signifier(:" || votre liste [ je ] || ")" ) )
) ;
Graphique ( X ( : sexe ) , Y ( Eval ( Ycols ) ) ) ;