Bonjour,
J'ai ce script suivant pour le graphique dans lequel l'incrément de l'axe des x est de 10, mais je veux mettre à jour l'axe des x pour que l'incrément de 0 à 10 soit de 1 et après cet incrément devrait être de 10 pour le reste de l'axe. Existe-t-il un moyen de mettre à jour ce script pour obtenir cela ?
Graph Builder(
Variables( X( :"Time (min)"n ), Y( :"A -024"n ) ),
Elements( Points( X, Y, Legend( 7 ) ), Smoother( X, Y, Legend( 8 ) ) ),
SendToReport(
Dispatch(
{},
"Time (min)",
ScaleBox,
{Format( "Best", 12 ), Min( 0 ), Max( 80 ), Inc( 10 ),
Minor Ticks( 1 )}
)
)
)Une toute petite chose que vous pouvez ajouter est de masquer ces éléments de légende « supplémentaires ». Double-cliquez sur la légende et désélectionnez-les


Remarque : en fonction de vos données, assurez-vous qu'il est évident pour les lecteurs que l'axe des x change, car cela peut être très difficile à repérer.
Salut @billi ,
Bien sûr, dans l’exemple que j’ai publié, j’ai utilisé le fichier Big Class.jmp, que vous pouvez trouver dans le menu Aide > Index des exemples.
La première chose que vous voudrez faire est de modifier vos préférences afin que l'espacement du graphique soit nul, et non simplement décoché (par défaut).
Cette fois, j'ai défini l'espacement des graphiques sur 0. La dernière fois, j'avais simplement décoché la case dans les préférences (laisse la ligne verticale comme avant), mais si vous la définissez réellement sur 0, il n'y a pas de ligne verticale séparant les graphiques. Pour accéder aux préférences, allez dans Fichier > Préférences, sélectionnez Plateformes, puis faites défiler vers le bas pour sélectionner Graph Builder :

Assurez-vous que la case à cocher pour l’espacement des graphiques est cochée, puis définissez l’espacement sur 0.
Accédez à Graph Builder, puis cliquez et faites glisser vos colonnes vers les axes respectifs. Le voici avec une seule colonne pour chaque axe :

Si vous cliquez et faites glisser la même colonne pour l'axe des x, puis la déplacez vers la droite de l'axe d'origine, comme ceci :

vous obtiendrez un graphique avec la même courbe sur deux axes. Double-cliquez sur l'axe de gauche et vous obtiendrez la fenêtre de réglage de l'axe, c'est la valeur par défaut :

Modifiez la valeur maximale de l'axe des x en fonction de votre nouvelle valeur x2, dans ce cas je choisis 60, et modifiez la valeur d'incrémentation en fonction de ce que vous souhaitez. Dans ce cas 1, puis cliquez sur OK :

et votre graphique ressemblera maintenant à ceci :

Vous ferez quelque chose de similaire pour l'axe des x de droite, mais changez le minimum à la même valeur que celle que vous aviez auparavant pour le maximum sur l'autre axe, dans ce cas 60. Je laisse la valeur par défaut maximale à ce qu'elle indique et je change l'incrément à 10. Cliquez sur OK.

Votre graphique devrait maintenant ressembler à ceci :

Pour changer la couleur du deuxième graphique, faites un clic droit sur l'icône du marqueur (faites de même pour l'icône de ligne) et sélectionnez la bonne couleur pour qu'elle soit la même que celle du graphique de gauche :

Votre graphique devrait maintenant ressembler à ceci :

Vous trouverez ci-dessous le code JSL enregistré dans une fenêtre de script qui a été utilisé pour générer le graphique ci-dessus
Graph Builder(
Graph Spacing( 0 ),
Variables( X( :height ), X( :height ), Y( :weight ) ),
Elements(
Position( 1, 1 ),
Points( X, Y, Legend( 26 ) ),
Smoother( X, Y, Legend( 27 ) )
),
Elements(
Position( 2, 1 ),
Points( X, Y, Legend( 28 ) ),
Smoother( X, Y, Legend( 29 ) )
),
SendToReport(
Dispatch(
{},
"height",
ScaleBox,
{Min( 50 ), Max( 60 ), Inc( 1 ), Minor Ticks( 1 )}
),
Dispatch(
{},
"height",
ScaleBox( 2 ),
{Min( 60 ), Max( 70.76 ), Inc( 10 ), Minor Ticks( 1 )}
),
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
28,
Properties( 0, {Line Color( 5 )}, Item ID( "weight", 1 ) )
), Legend Model(
29,
Properties( 0, {Line Color( 5 )}, Item ID( "Smooth", 1 ) )
)}
)
)
);
J'espère que cela aide.
Bonne chance!,
DS
@SDF1 Merci beaucoup, cette solution fonctionnera. Pourriez-vous m'expliquer les étapes à suivre pour créer le graphique que vous avez montré ci-dessus ou m'indiquer une documentation que je peux consulter et qui serait très utile ?
Salut @billi ,
Si je comprends bien votre demande, vous aimeriez avoir un seul axe des x avec deux valeurs d'incrément différentes, n'est-ce pas ? Où une partie de l'axe des x, disons de x1 à x2, a un incrément de 1 tandis que de x2 à x3, l'incrément est de 10 ?
Si tel est le cas, je ne pense pas qu'il existe un moyen de faire en sorte que JMP utilise deux valeurs d'incrément différentes pour le même axe. Vous pouvez cependant utiliser Graph Builder et le "truquer" pour obtenir quelque chose de similaire à ce que vous voulez, mais avec quelques particularités graphiques moins qu'idéales.
À titre d'exemple, j'utilise le fichier Big Class.jmp et je représente graphiquement :weight vs :height, mais j'utilise également :height comme deuxième axe des x. Je représente graphiquement le premier axe des x de 50 à 60 et le deuxième de 60 à 71 et je règle les incréments sur 1 et 10, respectivement. Vous obtenez un graphique qui ressemble à ceci :

Donc, d'une certaine manière, il est possible de faire cela, mais vous aurez deux axes x et ensuite la fine ligne verticale séparant les deux graphiques (ceci avec l'espacement des graphiques défini sur 0). Ce n'est peut-être pas exactement ce que vous recherchez, mais c'est une solution qui pourrait fonctionner.
J'espère que cela aide!,
DS