<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />J'affiche une boîte radio et un graphique dans une "nouvelle fenêtre".Si l'utilisateur sélectionne un graphique différent dans la case radio, je souhaite que l'ancien graphique soit supprimé et que le nouveau graphique soit affiché, le tout dans la même fenêtre.Je ne sais pas exactement comment procéder.Voici un exemple simple qui affiche le premier graphique.
dt = ouvrir ( "$sample_data\Big Class.jmp" ) ;
mon_1_script = expression (
mon_gb = Générateur de graphiques (
Afficher le panneau de configuration ( 0 ) ,
Variables ( X ( : poids ) , Oui ( : hauteur ) ) ,
Éléments ( Points ( X , Oui , Légende ( 1 ) ) , Plus lisse ( X , Oui , Légende ( 3 ) ) )
) ;
) ;
mon_2_script = expression (
mon_gb = Générateur de graphiques (
Afficher le panneau de configuration ( 0 ) ,
Variables ( X ( : sexe ) , Oui ( : âge ) ) ,
Éléments ( Histogramme ( X , Oui , Légende ( 5 ) ) )
) ;
) ;
mon_3_script = expression (
mon_gb = Générateur de graphiques (
Afficher le panneau de configuration ( 0 ) ,
Variables ( X ( : âge ) , Oui ( : âge ) ) ,
Éléments (
Tarte ( X , Oui , Légende ( 2 ) , Style de tarte ( "Tarte" ) ,
Statistique récapitulative ( "Signifier" ) , Étiquette ( "Pas d'étiquettes" )
)
)
) ;
) ;
liste_graphique = { "Graphique 1" , "Graphique 2" , "Graphique 3" } ;
//------------------------------------------------ -------------------------------
mon_gagnant = nouvelle fenetre ( "Affichage graphique" ,
panneau électrique ( "Options graphiques" ,
hlistbox (
panneau électrique ( "Sélectionner un graphique" ,
graphique_rb = boîte radio ( liste_graphique ,
graphique_sélectionné = graphique_rb << être sélectionné ;
si ( graphique_sélectionné == "Graphique 1" ,
mon_1_script ,
graphique_sélectionné == "Graphique 2" ,
mon_2_script ,
graphique_sélectionné == "Graphique 3" ,
mon_3_script
)
)
) ,
)
) ,
// La valeur par défaut est le graphique 1
mon_1_script
) ;
MS vraiment génial.Je savais que c'était relativement simple, mais je n'arrivais pas à comprendre la syntaxe correcte.Merci!
Il s'agit d'une version plus simple utilisant la même approche qui peut être plus facile à généraliser :
liste_graphique = { "Graphique 1" , "Graphique 2" , "Graphique 3" } ;
liste_script = { mon_1_script , mon_2_script , mon_3_script } ;
mon_gagnant = Nouvelle fenetre ( "Affichage graphique" ,
Panneau électrique ( "Options graphiques" ,
Zone de liste H (
Panneau électrique ( "Sélectionner un graphique" ,
graphique_rb = Boîte radio (
liste_graphique ,
go << supprimer ;
mon_gagnant << ajouter ( go = Évaluer ( liste_script [ graphique_rb << obtenir ] ) )
) ,
)
)
) ,
// La valeur par défaut est le graphique 1
go = évaluer ( liste_script [ 1 ])
) ;
Si on lui donne un nom de variable, le graphique peut facilement être supprimé avant de l'ajouter à la fenêtre.
Cela semble fonctionner :
mon_gagnant = Nouvelle fenetre ( "Affichage graphique" ,
Panneau électrique ( "Options graphiques" ,
Zone de liste H (
Panneau électrique ( "Sélectionner un graphique" ,
graphique_rb = Boîte radio (
liste_graphique ,
graphique_sélectionné = graphique_rb << être sélectionné ;
Si ( graphique_sélectionné == "Graphique 1" ,
go << supprimer ;
mon_gagnant << ajouter ( go = mon_1_script ) ,
graphique_sélectionné == "Graphique 2" ,
go << supprimer ;
mon_gagnant << ajouter ( go = mon_2_script ) ,
graphique_sélectionné == "Graphique 3" ,
go << supprimer ;
mon_gagnant << ajouter ( go = mon_3_script ) ,
) ;
)
) ,
)
) ,
// La valeur par défaut est le graphique 1
go = mon_1_script
) ;