Possibilité d'ajouter la création automatique de graphiques dans le script JSL ?Bonjour,
J'ai écrit un JSL pour organiser les données expérimentales qui met à jour 22 tableaux de données (correspondant à des produits), chacun contenant des colonnes pour différents paramètres physico-chimiques (ex : pH, osmolalité). Actuellement, je crée manuellement des graphiques à l'aide de la fonctionnalité Graph Builder et de « l'enregistrement du script dans la table de données ». Cependant, je me demandais s'il était possible d'écrire cela dans le script JSL principal qui génère mes tables de données ?
Chaque graphique affiche un paramètre particulier sur l'axe des y et le temps sur l'axe des x. Je souhaite donc écrire du code qui génère des graphiques dans chaque table de données pour chaque paramètre, plutôt que d'avoir à créer manuellement les graphiques et à enregistrer le script.
Automatisation et scriptsOrganisation du contenuMélange et nettoyage des donnéesPersonnalisation de masseRe : Possibilité d'ajouter la création automatique de graphiques dans le script JSL ?Je suis heureux d'apprendre que cela fonctionne pour vous ! Si vous souhaitez quelque chose de plus interactif, jetez un œil à la nouvelle fonctionnalité graphlets de JMP 15. Je pense que cela pourrait convenir à vos données. Les hiérarchies implicites permettraient de belles analyses approfondies.Re : Possibilité d'ajouter la création automatique de graphiques dans le script JSL ?Merci! J'ai finalement pu enregistrer les graphiques à l'aide de votre script révisé.
Re : Possibilité d'ajouter la création automatique de graphiques dans le script JSL ?Très bien, veuillez consulter la version ci-jointe pour la version compatible JMP 15.
Re : Possibilité d'ajouter la création automatique de graphiques dans le script JSL ?Je peux l'enregistrer dans JMP 15 sous forme de rapport en utilisant l'interface utilisateur "Enregistrer sous", mais je n'ai pas réussi à comprendre comment le faire en utilisant JSL.
C'est une bonne question pour l'équipe de développement. Êtes-vous à la Conférence Découverte ? Le stand virtuel "Meet the Developers" est ouvert dès maintenant et nos experts JSL y sont.
Re : Possibilité d'ajouter la création automatique de graphiques dans le script JSL ?Ah, je vois. J'utilise JMP 15. Je ne peux donc pas utiliser la fonction Enregistrer la fenêtre dans le rapport.
Re : Possibilité d'ajouter la création automatique de graphiques dans le script JSL ?Je suis vraiment désolé, je n'ai pas vérifié. Enregistrer la fenêtre dans le rapport a été introduit dans la version 16.0.Re : Possibilité d'ajouter la création automatique de graphiques dans le script JSL ?Bonjour,
1) J'ai apporté une modification à build_graphs, la première version ne renvoyait pas la référence de la fenêtre. Avez-vous mis à jour le vôtre ?
2) Quelle version de JMP utilisez-vous ?Re : Possibilité d'ajouter la création automatique de graphiques dans le script JSL ?Salut,
J'ai essayé d'utiliser la fonction « Enregistrer le rapport de fenêtre », mais le script renvoie l'erreur dans l'image ci-jointe.Aussi étrangement, je n'ai pas trouvé cette fonction dans l'index de script pour Window Object.
L'erreur se lit comme suit : 'Send attend un objet scriptable lors de l'accès ou de l'évaluation de 'Send',win << /*###*/Save Window Report ("automated_gb2.jrp", embed data(1)) /*## #*/
Re : Possibilité d'ajouter la création automatique de graphiques dans le script JSL ?Salut,
Oui, vous le pouvez certainement. Je ne savais pas comment faire, mais un rapide coup d'œil aux options disponibles pour l'objet Window dans l'index de script m'a dirigé vers la fonction "Enregistrer le rapport de fenêtre".
Veuillez consulter le fichier ci-joint. Il corrige un bug dans la fonction build_graphs (elle ne renvoyait pas la référence de la fenêtre) et ajoute la ligne suivante à la fin du script :
win << Save Window Report( "automated_gb2.jrp", embed data( 1 ) );
Re : Possibilité d'ajouter la création automatique de graphiques dans le script JSL ?Merci d'avoir partagé l'exemple de script avec les fonctions Setup et Build-graphs. J'ai pu adapter ces fonctions à mon script avec succès !
Je me demandais s'il était possible d'enregistrer la fenêtre graphique en tant que fichier séparé dans le même répertoire que mes tableaux de données ? J'utilise la fonction « Fermer » tout au long de mon script pour enregistrer les différentes tables de données, mais je ne sais pas comment utiliser la fonction pour enregistrer les fenêtres graphiques générées à l'aide de la zone de liste V dans la fonction « Build_graphs ».
Par exemple, tout au long de mon script, j'ai des variantes de :
Close( dtProduct, Save( save_path_example || "dtProduct.JMP"));
Re : Possibilité d'ajouter la création automatique de graphiques dans le script JSL ?Je me demande simplement s'il est peut-être possible de le faire en utilisant la fonction "Pour chaque ligne", si chaque ligne correspond à un paramètre différent de l'axe y, comme vous l'avez dit.
Re : Possibilité d'ajouter la création automatique de graphiques dans le script JSL ?Salut @DanAlexandre ,
J'appuie @txnelson que vérifier le Guide de script JSL serait vraiment utile compte tenu de la complexité de ce que vous essayez de faire.
Mais pour commencer, voici un exemple qui tente de faire quelque chose de similaire à ce que vous avez décrit.
La fonction "setup" crée quelques vues de données à partir du fichier d'exemple de données "CrimeData.jmp", pour simuler vos sous-ensembles de produits, et les associe à différents sous-ensembles de colonnes du tableau.
Le "build_graphs" montre comment utiliser JSL pour créer des graphiques à partir d'un modèle. Il s'agit simplement d'utiliser la substitution de variable.
Les graphiques sont combinés dans une seule fenêtre à l'aide d'une zone de liste V.
J'espère que ceci est utile!
Re : Possibilité d'ajouter la création automatique de graphiques dans le script JSL ?Il existe plusieurs façons de procéder. Vous pouvez simplement créer un tableau de données distinct comportant une colonne pour chaque produit, puis placer dans les lignes les paramètres physico-chimiques de ce produit. Ensuite, votre script n'aura qu'à déterminer le produit sur lequel il travaille et à lire dans la colonne du tableau de données de configuration les paramètres à traiter.
Si vous n'avez pas lu le Guide de script, c'est le moment de le faire.Re : Possibilité d'ajouter la création automatique de graphiques dans le script JSL ?Salut Jim,
Voici un exemple de script de création de graphique dans mon programme :
Graph Builder(
Size( 1263, 901 ),
Variables(
X( :Name( "Time (Months)" ) ),
Y( :Name( "% Adsorption" ) ),
Overlay( :Lot Number )
),
Elements(
Points( X, Y, Legend( 13 ) ),
Line Of Fit( X, Y, Legend( 15 ), Confidence of Fit( 0 ) )
));
Ma préoccupation est qu'en raison de la taille de mon script, je devrais écrire plus de 100 itérations du script ci-dessus pour couvrir toutes les différentes tables de données et paramètres de l'axe Y. Je me demandais si je pouvais créer une liste de tous les paramètres de l'axe y et faire appel à cette liste dans le script ci-dessus ?
Mon script principal trie essentiellement une base de données de données brutes en 22 tables de données de « sous-ensembles de produits », chacune étant spécifique à un produit particulier. Il existe environ 30 paramètres physico-chimiques différents, chacun devant avoir un graphique distinct en fonction du temps. Cependant, tous les paramètres ne s’appliquent pas à tous les produits. Autrement dit, un tableau de données particulier ne peut contenir que 10 des 30 paramètres.
Re : Possibilité d'ajouter la création automatique de graphiques dans le script JSL ?Absolument, vous pouvez ajouter la possibilité d'exécuter une plateforme Graph Builder en JSL dans votre programme principal. Si vous exécutez de manière interactive le Graph Builder souhaité, vous pouvez ensuite accéder au triangle rouge et sélectionner Enregistrer le script. si vous l'enregistrez dans une fenêtre de script, vous pourrez voir le JSL requis pour produire le graphique. Sans plus de détails sur votre script, il est assez difficile d'aller au-delà de ma suggestion ci-dessus.