Salut tout le monde,
Exécution de JMP/JMP Pro sur des machines Windows 11.
Je suis curieux de savoir comment contourner un type de problème très spécifique - et le faire automatiquement (pas manuellement).Par exemple, j'utilise l'exemple de table de données Air.jmp pour montrer le problème en question. J'ai joint une copie des fichiers avec le script pour montrer le problème.
J'ai une table de données dans laquelle j'ajoute des données quotidiennement (parfois chaque semaine), et j'ai un script intégré dans la table de données pour tracer les données par rapport à la date. Pour imiter cela, j'ai divisé la table de données Air.jmp en deux moitiés et j'ai créé le graphique du générateur de graphes, puis j'ai concaténé le "nouveau" (seconde moitié des données) à la première moitié de l'autre table et réexécuté le script.
Idéalement, j'aimerais obtenir une sortie où l'axe x de la date du générateur de graphique est automatiquement mis à l'échelle à la date la plus récente, comme ceci :

Au lieu de cela, j'obtiens un graphique où il ne met à jour que la valeur du moment où j'ai enregistré la dernière version de ce script de création de graphique dans la table de données. Ainsi, la sortie ressemble à ceci :

Cela ne se produit pas lorsque vous ne faites que représenter graphiquement les points de données et que vous ne modifiez pas l'incrément de l'axe. L'incrément par défaut sur l'axe pour cet ensemble de données (le premier semestre) est de 2 ans. Après avoir ajouté la seconde moitié des données et réexécuté le script dans la table de données, il réinitialise la valeur par défaut à 5 ans et représente graphiquement toutes les données.
Cependant, si vous modifiez l'incrément par défaut à 1 mois, par exemple, et enregistrez le script dans la table de données (première moitié), puis ajoutez les nouvelles données et réexécutez le script, il conserve les paramètres d'axe identiques à ceux d'origine. script -- il ne se met pas à jour pour inclure les nouvelles données. La grande différence dans le script est la commande SendToReport :
SendToReport(
Dispatch(
{},
"date",
ScaleBox,
{Min( 1597574016 ), Max( 1925078400 ), Interval( "Month" ), Inc( 1 ),
Minor Ticks( 1 )}
)
)Dans cette commande, il y a les paramètres de date Min() et Max() qui sont modifiés par la plage de dates existante de la table de données d'origine. Je ne sais pas pourquoi cette limitation est là et n'est pas mise à jour pour refléter les nouvelles dates qui sont ajoutées à une table de données et le script est réexécuté.
Existe-t-il un moyen de contourner ce problème tout en conservant l'intervalle des mois et en imbriquant également l'axe des x afin que les mois soient également regroupés en années ? Après avoir ajouté de nouvelles données à la table et réexécuté le script, j'aimerais que le nouveau graphique utilise les paramètres Min() et Max() de la dernière table de données, et non de l'original.
J'espère qu'il y a une solution facile à cela. Sinon, je pense que je vais mettre dans une liste de souhaits une demande de modification pour permettre aux entrées Min() et Max() de l'axe d'être mises à jour automatiquement par les valeurs actuelles dans la colonne correspondante de la table de données.
Merci d'avance pour vos commentaires/idées !,
DS