Je suis nouveau sur JSL. Ma question est de savoir comment changer le marqueur d'état de ligne avec la même valeur qu'une colonne. J'ai une colonne avec 1,2,3,4....350. Je souhaite afficher le nombre comme marqueur au lieu de diamants, * ou de cercles dans mon générateur de graphiques. Existe-t-il un moyen de référencer les valeurs des colonnes dans l'état du marqueur ?
Par exemple,
Pour chaque ligne( Row State( Row() ) = Marker State( :M) ) ); -> Cela change le marqueur en M pour toutes les données
Pour chaque ligne( Row State( Row() ) = Marker State( :Column("Die") ) ); -> Cela ne fonctionne pas.
Je n'ai pas utilisé de scripts. Je suis juste curieux de savoir comment cela fonctionne. J’apprécie vraiment votre temps et vos efforts.
Merci pour l'aide.
On peut faire glisser chaque étiquette de manière interactive vers une nouvelle position, mais cette solution n'est pas acceptable. Le repositionnement manuel de certaines étiquettes pourrait être capturé dans un script puis étendu à tous les marqueurs, mais je ne l'ai pas étudié. Je pense que le script nécessiterait de déterminer la taille de chaque étiquette en pixels et de traduire les coordonnées cartésiennes en pixels.
Merci beaucoup Marc. C'est exactement ce que je veux. Par hasard, puis-je positionner l'étiquette pour qu'elle soit au-dessus de la pointe plutôt que sur le côté ?
La valeur que vous souhaitez utiliser comme étiquette pour un marqueur doit être une valeur dans une colonne de données désignée pour être utilisée comme étiquette. Dans cet exemple utilisant la table de données Big Class, le nom La colonne est désignée comme colonne d'étiquette. Vous devez en outre sélectionner toutes les lignes à étiqueter puis sélectionnez Rangée > Étiquette pour appliquer les étiquettes. Dans ce cas, j'ai sélectionné toutes les lignes. Le résultat dans Graph Builder ressemble à ceci :

Ce résultat est-il ce que vous souhaitez ?
Je vous suggère de lire Aide > Livres > Essential Graphing pour plus d'informations et d'exemples.
Désolé d'avoir dit mon objectif plus tôt. Mon objectif est de créer mes marqueurs de création de graphiques avec des valeurs de données. Imaginez qu'il s'agit d'un tableau dans un tableau de nombres. J'utilise l'axe des graphiques pour montrer où ils se trouvent physiquement, et les points de données doivent montrer la valeur du dé auquel ils correspondent.
Si vous vérifiez l'image ci-jointe, le numéro 274 devrait représenter le marqueur en surbrillance.
Est-ce que quelqu'un peut m'aider avec ça?
Merci beaucoup.
Vous n'avez pas mentionné les étiquettes auparavant. Outre le marqueur (forme), les marqueurs individuels peuvent être étiquetés avec les valeurs de données dans une ou plusieurs colonnes de données. Vous désignez les colonnes qui doivent être utilisées comme étiquettes. Sélectionnez les colonnes contenant les données d'étiquette, puis sélectionnez Cols > Étiquette. Une fois l’étiquetage configuré, sélectionnez maintenant toutes les lignes. Les lignes sélectionnées seront étiquetées dans Graph Builder.
Je suis désolé que nous procédions étape par étape, mais votre objectif global n'est pas clair.
Merci pour la réponse Marc. Dans ce cas, existe-t-il un moyen de marquer de manière permanente l'étiquette sur la valeur du graphique ?
L'état de ligne est associé à une observation (ligne) et non à une variable (colonne). Si vous souhaitez utiliser un marqueur différent pour chaque colonne, vous modifiez le marqueur dans Graph Builder. Voici un script pour un exemple simple traçant les colonnes 2 à 4 par rapport à la colonne 1.
Graph Builder(
Show Control Panel( 0 ),
Show Legend( 0 ),
Variables(
X( :Name( "1" ) ),
Y( :Name( "2" ) ),
Y( :Name( "3" ), Position( 1 ) ),
Y( :Name( "4" ), Position( 1 ) )
),
Elements(
Points( X, Y( 1 ), Y( 2 ), Y( 3 ), Legend( 5 ) ),
Smoother( X, Y( 1 ), Y( 2 ), Y( 3 ), Legend( 6 ) )
),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
5,
Base( 0, 0, 0 ),
Base( 1, 0, 1 ),
Base( 2, 0, 2 ),
Properties( 0, {Marker( "Diamond" ), Fill Color( 0 )} ),
Properties( 1, {Marker( "Triangle" ), Fill Color( 0 )} ),
Properties( 2, {Marker( "Square" ), Fill Color( 0 )} )
)}
),
Dispatch(
{},
"400",
LegendBox,
{Legend Position( {5, [3, 4, 5], 6, [0, 1, 2]} ),
Position( {3, 4, 5, 0, 1, 2} )}
)
)
);
Je vous suggère d'expérimenter d'abord ce type de changement de manière interactive. Configurez quelques colonnes dans le rôle Y comme d'habitude. Cliquez ensuite avec le bouton droit sur le tracé et sélectionnez Personnaliser. Vous obtiendrez une boîte de dialogue avec une liste des objets personnalisables, y compris les marqueurs actuels. Sélectionnez maintenant un marqueur dans la liste à la fois, cliquez sur le marqueur actuel à droite et sélectionnez-en un autre.
Un script pourrait configurer Graph Builder, puis parcourir chaque colonne et modifier le marqueur.
BTW, vous pouvez utiliser n'importe quel caractère Unicode comme marqueur. Notez que les marqueurs ne peuvent comporter qu’un seul caractère.