Flexibilité graphique/légende<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />J'ai des scripts de travail qui manipulent une table de données et créent un graphique .....Tout est bien......
Cependant, j'aimerais tenir compte des changements dans les données au fil du temps.Par exemple -- il y a actuellement 5 niveaux de priorité qui peuvent être rapportés dans la base de données (c'est-à-dire Bloqueur, Critique, Majeur, Mineur, Trivial) ---- mais tous ne sont pas utilisés pendant chaque période de rapport par les utilisateurs (par exemple Critique, Majeure, Mineure peuvent être les seules entrées pour une période de rapport particulière)..... il est très probable que les utilisateurs incluront toutes (c'est-à-dire les 5) priorités à l'avenir pour une période de rapport particulière.De plus --- il est probable que pour la prochaine période de rapport, l'utilisateur ne puisse utiliser que 3 des niveaux de priorité.
Mon dilemme --- mon script graphique actuel ne prend en charge qu'un nombre fixe de priorités ---- donc si je le construis pour ne gérer que 4 alors j'exclus peut-être des données sur le graphique ---- j'ai essayé de le forcer à toujours afficher 5 priorités mais cela semble gâcher la légende (mauvais ordre des étiquettes/couleurs).......Existe-t-il un moyen de le rendre dynamique en fonction des valeurs de données à utiliser dans la "superposition" ?
// Build the visualization Graph to show severity of open defects//
wind = New Window( "Open Defects by Severity",
Graph Builder(
Size( 570, 616 ),
Show Control Panel( 0 ),
Variables(
X( :Name( "Affects Version/s" ) ),
Group Y( :Open_Defects ),
Overlay( :Priority )
),
Elements(
Bar( X, Legend( 2 ), Bar Style( "Stacked" ), Summary Statistic( "N" ) )
),
SendToReport(
Dispatch(
{},
"Affects Version/s",
ScaleBox,
{Show Major Ticks( 0 ), Rotated Labels( "Automatic" )}
),
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
2,
Properties( 3, {Line Color( -10931939 ), Fill Color( -10931939 )} ),
Properties( 2, {Line Color( -2062516 ), Fill Color( -2062516 )} ),
Properties( 1, {Line Color( -11722634 ), Fill Color( -11722634 )} ),
Properties( 0, {Line Color( -3383340 ), Fill Color( -3383340 )} )
)}
),
Dispatch( {}, "400", LegendBox, {Position( {3, 2, 1, 0} )} )
)
)
);

Re : Flexibilité des graphiques/légendesSam,
Merci! Grande aide!
Kun
Re : Flexibilité des graphiques/légendesOn dirait que vous avez fait le plus dur pour mettre les données dans la bonne forme. Si ce ne sont que les couleurs particulières qui doivent être contrôlées, essayez d'utiliser la propriété de colonne Value Colors sur chaque colonne (vous pouvez les définir toutes en même temps avec l'élément de menu Standardize Attributes).

Re : Flexibilité des graphiques/légendesXan,
merci pour votre aide.Votre suggestion semble ne pas pouvoir résoudre mon problème. J'essaie de mieux expliquer mon besoin ici encore. Comme vous pouvez trouver le tableau ci-joint "entrée d'échantillons de laboratoire", j'enregistre ici tous les types, heures et séquences d'entrée d'échantillons. J'essaie d'obtenir la sortie graphique finale en tant que "sortie graphique souhaitée" ci-jointe. La couleur signifie un type d'échantillon différent. La séquence d'entrée des échantillons est très importante pour nous. La première entrée sera située dans la première ligne de chaque jour. La dernière entrée sera située dans la dernière ligne de chaque jour. Chaque cellule correspond à un lot d'échantillons.
J'ai testé en utilisant le tracé de cellules après avoir transformé la table d'origine pour obtenir une table de transformation. Cependant, comme vous pouvez le trouver dans le graphique de cellules ci-joint, je ne peux pas obtenir la couleur souhaitée. JMP semble toujours commencer à colorer dès le premier type de produit. Ce n'est pas la voie que je souhaite. J'ai besoin d'une couleur fixe pour chaque type d'échantillon.
Pouvez-vous me donner une suggestion? Merci d'avance.
Kun
Re : Flexibilité des graphiques/légendesKun,
Les barres empilées peuvent fonctionner si vous ajoutez une catégorie blanche de remplissage pour les espaces. Une autre idée est l'élément Heat Map dans Graph Builder. Photo jointe. Pouvez-vous créer un nuage de points et choisir un marqueur rectangulaire rempli pour chaque point.
Re : Flexibilité des graphiques/légendesKun, je suis assez nouveau sur JMP, donc je ne sais pas s'il est capable de produire les résultats que vous décrivez...
Re : Flexibilité des graphiques/légendesMerci, Twaintwist !
Votre fichier de table et JSL m'aident à comprendre votre problème et la solution finale. Apprenez un cas d'application important.
Ici, j'essaie d'utiliser un graphique en forme de barre pour montrer le type de chargement, la séquence et les nombres d'échantillons quotidiens dans notre laboratoire.Ici vous pouvez trouver totalement il y a 21 types d'échantillons à entrer dans notre laboratoire pour tester. J'essaie de suivre leur séquence d'arrivée tous les jours. J'utilise une couleur pour un type d'échantillon. S'il y a la même portée d'échantillons successifs, ce sera une longue barre avec la même couleur.J'ai joint un graphique produit par excel. Croyez-vous que nous pouvons le réaliser via jmp JSL?
Merci d'avance.
Kun
Re : Flexibilité des graphiques/légendesKun,
En pièce jointe, vous devriez trouver le script JMP ( Ajout de lignes Script.jsl) , la table de données ( general_report.jmp ) et une capture d'écran des résultats ( Après.jpg )....
Le script ajoute 5 nouvelles lignes en haut du dataTable, puis il remplit ces 5 lignes avec 5 noms de caractères uniques dans la colonne "Priority".Cela garantira que chaque graphique généré à l'aide de ce script affichera les cinq noms dans la légende.Je fais cela parce que de nouvelles tables de données sont générées au fil du temps, certaines auront les 5 noms et d'autres non.Lorsqu'ils n'ont pas les 5 noms, la légende ne reste pas dans le même ordre ou dans le même schéma de couleurs ---- donc lors de la comparaison des graphiques des exécutions précédentes, les légendes ne correspondent pas et c'est déroutant.En forçant les 5 noms ça produit des Légendes qui sont cohérentes....

Re : Flexibilité des graphiques/légendesTwaintwist, merci pour votre message qui soulève une question importante. Je crois qu'ici aussi j'ai le même problème. J'ai du mal à comprendre votre solution finale. Pouvez-vous joindre une table jmp comme exemple pour moi? Pouvez-vous coller le JSl final contenant ajouter une ligne et définir la valeur ici afin que je puisse tester. Merci! Kun
Re : Flexibilité des graphiques/légendesOk --- voici ce que j'ai et ça marche bien.... --- merci à la suggestion de Xan....
J'ai ajouté 5 lignes de données « vides » ---- le seul champ saisi sur chaque ligne se trouve dans la colonne marquée « Priorité » ---- Le script crée 5 lignes au début du tableau de données et remplit le Priorité colonne à 5 entrées
Le reste du script filtre ces lignes car aucun autre champ dans les lignes ne contient de données - ces nouvelles lignes ne corrompent donc pas les graphiques générés (c'est-à-dire en affichant les données prioritaires supplémentaires).
Maintenant, chaque graphique généré montre chacune des 5 priorités dans la légende même si ces priorités n'existaient pas dans les données d'origine ----- cela aide à la cohérence dans le schéma de couleurs que nous avons développé pour chaque priorité et dans l'ordre dans lequel elles sont présentées la légende. ---- nous remplissons un PowerPoint avec des graphiques côte à côte, il est donc important que le jeu de couleurs et l'ordre dans la légende soient cohérents....
Re : Flexibilité des graphiques/légendesXane :
J'y pensais aussi ----- mais j'avais peur que cela "ajoute" de fausses données ----- mais votre suggestion d'ajouter des valeurs manquantes aux autres colonnes peut fonctionner --- Je vais lui donner un essayer
Re : Flexibilité des graphiques/légendesBonne question. La seule solution à laquelle je peux penser est d'ajouter des lignes factices à la table de données représentant tous les niveaux de priorité mais avec des valeurs manquantes pour les autres colonnes.