Réutilisation des polices, styles et tailles de policeExiste-t-il un moyen de réutiliser les styles de police?
Disons que j'ai beaucoup de graphiques et pour chaque Axis Box, j'applique ceci:
Dispatch( {}, "X", ScaleBox, {Format( "Best", 12 ), Min( 0.5 ), Max( 0.6 ), Inc( 0.0005 ), Minor Ticks( 1 ), Label Row(
{Set Font( "Agency FB" ), Set Font Size( 8 )}
)} )Ensuite, je décide que la taille 8 est trop petite et maintenant je dois aller à chaque endroit où je la mets et la changer.
Toute façon de dire quelque chose comme:
myFontStyle = {Set Font( "Agency FB" ), Set Font Size( 8 )};puis utilisez simplement:
Label Row(myFontStyle)
Je soupçonne que vous pourriez faire cela d'une manière ou d'une autre avec Expression Evaluation - mais je ne comprends tout simplement pas cette affaire avec les expressions et les évaluations. Aucune suggestion?
ScriptingRe: Réutilisation des polices, styles et tailles de policeAu lieu d'utiliser Dispatch, il est souvent recommandé d'envoyer des messages directement aux boîtes de balance.Vous pouvez les rechercher, puis envoyer une liste d'instructions à une liste d'objets pour effectuer toutes les modifications en même temps.Voir cet exemple:
names default to here(1);
dt = Open("$Sample_Data/Big Class.jmp");
gb = dt << Graph Builder(
Size( 321, 1012 ),
Show Control Panel( 0 ),
Variables( X( :height ), Y( :weight ), Page( :age ) ),
Elements( Points( X, Y, Legend( 22 ) ), Smoother( X, Y, Legend( 23 ) ) )
);
//use this to find charID:
gb << Get XML;
//Modify X Axes by first getting a list of scale boxes and then sending
//a list of messages to each.
(gb << XPath( "//ScaleBox[@charID='height']" )) << {
Format( "Best", 12 ),
Min( 50 ),
Max( 75 ),
Inc( 5 ),
Minor Ticks( 1 ),
Label Row( {
Set Font( "Agency FB" ),
Set Font Size( 8 )
} )
};
//Modify Y Axes:
(gb << XPath( "//ScaleBox[@charID='weight']" )) << {
Format( "Best", 12 ),
Min( 50 ),
Max( 150 ),
Inc( 25 ),
Minor Ticks( 1 ),
Label Row( {
Set Font( "Agency FB" ),
Set Font Size( 8 )
} )
};