<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />J'ai plusieurs points définis dans un script JSL et en cours d'exécution qui généreraient une table et superposeraient également des tracés pour chaque point.
Dire que j'ai point1, point2, point3
je veux le définir
RATIO1 = point1*100/(point1+point2+point3)
RATIO2 = point2*100/(point1+point2+point3)
RATIO3 = point3*100/(point1+point2+point3)
Ensuite, tracez la superposition de RATIO1, RATIO2, RATIO3 par rapport à l'horodatage.
J'ai essayé d'utiliser Assign(RATIO1, point1*100/(point1+point2+point3)) mais cela n'a pas fonctionné.J'ai aussi essayé les opérateurs tels que
Assign(RATIO1, Multiply(100, Divide(point1, Add(point1, point2, point3))));
mais cela ne fonctionnait toujours pas pour le tracé de superposition car l'erreur indiquait qu'il ne pouvait pas trouver le rôle de Y défini.Pouvez-vous s'il vous plaît me faire savoir s'il y a quelque chose qui ne va pas avec le script?J'ai aussi essayé :"RATIO1" ou name("RATIO1") ou en mettant l'équation exacte ci-dessus lors du traçage de Y ci-dessous... tout n'a pas fonctionné.
DT est la base de données :
DT << Tracé de superposition (
X ( : Horodatage ) ,
Oui (
: RATIO1
:RATIO2
:RATIO3
) ,
);
Voici mon code avec l'extraction des points, et actuellement il est tracé avec chaque point mais je veux faire des formules arithmétiques en utilisant ces points et les tracer en superposition.Comment définir correctement la formule/équation dans le script, puis comment tracer en Y.Vous pouvez voir l'effort précédent que j'ai essayé dans le premier message.
DT = Ouvrir la base de données("DRIVER=S Server;SERVER=SP.trend.com,0000",
"DÉCLARER @StartDateTime datetime = DATEADD(dy, -1, GETDATE())
DÉCLARER @EndDateTime datetime = GETDATE()
EXEC ListData @Criteria='
'
, @StartDateTime=@StartDateTime
, @EndDateTime=@EndDateTime"
);
plotRATIOS = DT << Tracé de superposition(
X( :Horodatage ),
Oui(
:XX_POINTA,
:XX_POINTB,
:XX_POINTC,
:XX_POINTD
),
Trier X( 0 ),
Connexion via manquante( 1 ),
Points de connexion( 1 ),
Recalcul automatique( 0 ),
EnvoyerVersRapport(
Dispatch( {}, "102", ScaleBox, {Format( "Best", 10 )} ),
Expédition(
{},
"101",
ScaleBox,
{Format( "m/d/y", 10 ), Rotation des étiquettes( "Vertical" )}
),
Dispatch( {}, "Overlay Plot Graph", FrameBox, {Frame Size( 571, 450 )} )
)
);
Est-ce proche de ce dont vous avez besoin ? Copiez et collez ce code dans une fenêtre d'édition, puis 'Edit > Run Script'. Ensuite, regardez les formules dans les colonnes 'RATIOn'.
NomsDefaultToHere ( 1 ) ;
// Exemple de tableau
dt = Nouveau tableau ( "Date et heures en 2014" ,
Ajouter des lignes ( 100 ) ,
Nouvelle colonne ( "Date" ,
Numérique ,
"Continu" ,
Format ( "jjMonyyyy h:m:s" , 22 , 0 ) ,
Format d'entrée ( "jjMonyyyy h:m:s" , 0 ) ,
Formule (
Entier aléatoire ( Date JMA ( 1 , 1 , 2014 ) , Date JMA ( 31 , 12 , 2014 ) )
)
) ,
Nouvelle colonne ( "p1" , Numérique , Continu , Formule ( Uniforme aléatoire () )) ,
Nouvelle colonne ( "p2" , Numérique , Continu , Formule ( Uniforme aléatoire () )) ,
Nouvelle colonne ( "p3" , Numérique , Continu , Formule ( Uniforme aléatoire () )) ,
Nouvelle colonne ( "RATIO1" , Numérique , Continu , Formule ( : p1 * 100 / ( : p1 + : p2 + : p3 ))) ,
Nouvelle colonne ( "RATIO2" , Numérique , Continu , Formule ( : p2 * 100 / ( : p1 + : p2 + : p3 ))) ,
Nouvelle colonne ( "RATIO3" , Numérique , Continu , Formule ( : p3 * 100 / ( : p1 + : p2 + : p3 ))) ,
) ;
// Afficher les séries temporelles dans Graph Builder
dt << Générateur de graphiques (
Afficher le panneau de configuration ( 0 ) ,
variables ( X ( : Date ) , Oui ( : RATIO1 ) , Oui ( : RATIO2 ) , Oui ( : RATIO3 ) ) ,
Éléments ( Position ( 1 , 1 ) , Doubler ( X , Oui , Légende ( 11 ) ) ) ,
Éléments ( Position ( 1 , 2 ) , Doubler ( X , Oui , Légende ( 12 ) ) ) ,
Éléments ( Position ( 1 , 3 ) , Doubler ( X , Oui , Légende ( 13 ) ) )
) ;