Re : Comment puis-je changer tous les axes X dans un générateur de graphique en échelle logarithmiqueUne façon de gérer cela consiste à utiliser Standardize Attributes pour modifier la propriété Axis Column.
Pour modifier tous les axes à enregistrer :
- Accédez à la table de données et sélectionnez les colonnes dont vous souhaitez modifier les axes pour
- Sélectionnez Cols=>Standardiser les attributs
- Sélectionnez Propriétés de la colonne=>Axe
- Cliquez sur Définir les paramètres d'axe par défaut
- Changer l'échelle de Linéaire à Log
- Cliquez sur OK
Les axes de tous les axes X du graphique seront remplacés par une échelle logarithmique
Re : Comment puis-je changer tous les axes X dans un générateur de graphique en échelle logarithmiqueMerci beaucoup pour la suggestion.
Cependant, mon utilisation de Graph Builder est assez dynamique et il est souvent difficile de prédire quelles colonnes seront utilisées pour le traçage.
Existe-t-il un script que je peux utiliser pour convertir les axes X déjà utilisés par une figure de Graph Builder ?
Par exemple, je sais que je peux le faire pour la matrice de nuage de points avec
For( i = 100, i < 200, i++,
(Current Window() << XPath( "//ScaleBox[@charID=" || Char( i ) || "]" )) << Revert Axis
<< {Scale( "Log" ), Inc( 1 ), Minor Ticks( 1 )}
)
Re : Comment puis-je changer tous les axes X dans un générateur de graphique en échelle logarithmiqueVous n'avez pas besoin d'itérer. La liste des boîtes d'affichage distribuera automatiquement les messages qu'elle reçoit à chacun de ses éléments, vous n'avez donc qu'à vous assurer que la liste est correcte. Par exemple:
Names Default to Here( 1 );
dt = Open( "$SAMPLE_DATA/Fitness.jmp" );
sm = dt << Scatterplot Matrix(
Y( :Age, :Weight, :Oxy, :Runtime, :RunPulse, :RstPulse, :MaxPulse ),
Matrix Format( "Lower Triangular" )
);
(Report( sm ) << XPath( "//AxisBox" ))
<< Revert Axis
<< Scale( "Log" )
<< Inc( 10 )
<< Minor Ticks( 0 );
Re : Comment puis-je changer tous les axes X dans un générateur de graphique en échelle logarithmiqueMon problème est que je veux garder les axes y en échelle linéaire mais changer les axes x en échelle logarithmique. Sans itération, je crains que les deux axes X/Y ne passent à l'échelle logarithmique.
Au fait, une approche similaire fonctionne-t-elle pour Graph Builder ?
Re : Comment puis-je changer tous les axes X dans un générateur de graphique en échelle logarithmiqueCette approche fonctionne toujours. Inscrivez d'abord la liste pour obtenir une nouvelle liste avec uniquement les cases d'axe que vous souhaitez modifier, puis envoyez les messages à cette liste cible. Cette méthode est toujours beaucoup plus simple et plus propre que le bouclage explicite.
Voici une modification de mon premier exemple pour illustrer la nouvelle approche :
Names Default to Here( 1 );
dt = Open( "$SAMPLE_DATA/Fitness.jmp" );
sm = dt << Scatterplot Matrix(
Y( :Age, :Weight, :Oxy, :Runtime, :RunPulse, :RstPulse, :MaxPulse ),
Matrix Format( "Lower Triangular" )
);
// change X axes only in Scatterplot Matrix
axes = Report( sm ) << XPath( "//AxisBox" );
nAxes = N Items( axes );
// second half of list only
axes[((nAxes/2)+1)::nAxes] << Select; // Scale( "Log" );
Cependant, cela ne fonctionne pas bien avec la matrice de diagramme de dispersion, car toutes les colonnes de données sauf une sont utilisées dans le rôle X et Y, et la logique interne essaie de maintenir la cohérence des modifications aux deux endroits (rôle X et Y).
Re : Comment puis-je changer tous les axes X dans un générateur de graphique en échelle logarithmiqueÉtant donné que je ne trouve pas de moyen d'identifier les axes X à partir des axes Y, ma solution actuelle utilise cette commande pour définir tous les axes sur l'échelle logarithmique, puis rétablir manuellement les axes Y sur l'échelle linéaire, ce qui est beaucoup plus facile que le réglage manuel de l'échelle logarithmique. .
(Fenêtre actuelle() << XPath( "//AxisBox" ) ) << Revert Axis << {Scale( "Log" ), Inc( 1 ), Minor Ticks( 1 )}
Comment puis-je changer tous les axes X dans un générateur de graphique en échelle logarithmiqueDouble-cliquer sur les axes est un vrai casse-tête.

Exploration et visualisation des données