Comment enregistrer un groupe individuellementJ'essaie d'automatiser la création de mon graphique JMP. J'ai utilisé les éléments suivants comme guide: Création automatisée de rapports de l'importation des données à la publication 2019
Je suis arrivé au point où je peux créer tous les graphiques. Maintenant, je travaille à les sauver et à avoir du mal à déterminer comment. Je génère un rapport de graphique P qui est regroupé par une valeur dans la table de données sous-jacente. Le rapport contient plusieurs graphiques P, un pour chaque groupe par valeur. Je veux enregistrer chacun individuellement dans une page HTML séparée. Ainsi, par exemple, si j'avais un rapport groupé sur "Planètes" et que le rapport contienne des graphiques pour chaque planète, je souhaite créer une page HTML avec le graphique pour chaque planète, avec pour chaque page une page HTML avec toutes les planètes. Est-ce possible, et si oui comment. Ci-joint mon exemple de script.
Re: Comment enregistrer le groupe par graphiques individuellementVoici un exemple que vous devriez pouvoir adapter:
NamesDefaultToHere(1);
// Get some data
dt = Open("$SAMPLE_DATA/Big Class.jmp");
// Run the platform. NB: ccb is a list, because of teh use of the 'By' variable
ccb = dt << Control Chart Builder(
Show Control Panel( 0 ),
Show Limit Summaries( 0 ),
Show Capability( 0 ),
Variables( Y( :height ) ),
By( :sex)
);
// Save the report for each level of the 'By' variable
for(c=1, c<=NItems(ccb), c++,
// Get the current report layer
thisrep = Report(ccb[c]);
// Get the first outline box
firstOB = thisrep[OutlineBox(1)];
// Get the title of this outline box
thistitle = firstOB << getTitle;
// Save as HTML
firstOB << saveHTML("$DESKTOP/"||thistitle);
);Re: Comment enregistrer le groupe par graphiques individuellementJ'ai essayé ce qui suit, mais cela ne fonctionne pas correctement:
tableau de données actuel (ppn);
ppnP = ppn << Control Chart Builder(
Sample Label( :ReleaseMonth ),
Phase( :Phase ),
Sample Size( :Name( "Sum-Total" ) ),
KSigma( 3 ),
Chart Col( :OnTimePct, P( Phase Level( "1" ), Phase Level( "2" ) ) ),
By( :name )
);
// Save the report for each level of the 'By' variable
For( c = 1, c <= N Items( ccb ), c++,
// Get the current report layer
thisrep = Report( ccb[c] );
// Get the first outline box
firstOB = thisrep[Outline Box( 1 )];
// Get the title of this outline box
thistitle = firstOB << getTitle;
// Save as HTML
firstOB << saveHTML( "$DESKTOP/" || thistitle );
);
Je reçois un seul rapport comme celui-ci (note: j'ai masqué des informations) et rien n'est enregistré au format HTML dans le répertoire du bureau. Je crée des diagrammes P, alors je ne sais pas si cela pose problème avec ce processus.

Re: Comment enregistrer le groupe par graphiques individuellementJe doute que le type de graphique pose problème. Mais je remarque que vous avez attribué la référence à «ppnP» aux multiples graphiques p de Control Chart Builder, mais le code suivant fait toujours référence à «ccb» (comme dans l'exemple que j'ai utilisé).
Re: Comment enregistrer le groupe par graphiques individuellementBonne prise sur "ccb". Cela faisait partie du problème. L'autre problème consistait à utiliser "Control Chart Builder". Je l'ai changé pour juste "Control Chart" et cela fonctionne. Le nouveau problème est le nom du fichier généré. Je vois que tu as utilisé:
thistitle = firstOB << getTitle;
Cela me donne un titre: "Nom de la carte de contrôle = XXXXXXX"
1. J'imagine qu'en utilisant saveHTML, je pourrais ajouter .html car il est enregistré sans extension.
2 Comment puis-je obtenir uniquement la partie XXXXXX? Devrais-je savoir à l'avance que ce sera toujours "Control Chart =" et ensuite manipuler cette valeur de chaîne, ou existe-t-il un moyen plus simple? Existe-t-il des fonctions de manipulation de chaînes dans JMP?
Re: Comment enregistrer le groupe par graphiques individuellement
@LeeP a écrit:
Existe-t-il des fonctions de manipulation de chaînes dans JMP?
Il y a beaucoup de. Voici un bon début:
Fonctions de chaîne de caractères JSL
Si vous n’apprenez qu’une seule fonction de l’éditeur de formules, Word () est celui