Los datos se generan algorítmicamente en el paso DATA 'mydata' aplicando funciones sinusoidales basadas en la diferencia entre la fecha actual y la fecha de nacimiento.
1 Bloque de código
ODS & GOPTIONS
Explicación : Configuración de la salida ODS HTML (adaptada a los Stored Processes) y definición de los parámetros globales del gráfico (tamaño, fuentes, colores) con GOPTIONS.
Explicación : Conversión de la fecha de nacimiento (texto) a un valor numérico SAS y cálculo del rango de fechas de análisis (hoy +/- 30 días). Almacenamiento de estos valores en macro-variables.
Explicación : Generación de los datos de biorritmo. Para cada día del período, cálculo de los valores sinusoidales para los ciclos físico (23 días), emocional (28 días) e intelectual (33 días).
¡Copiado!
data mydata;
length id $15;
format date date9.;
format value percentn7.0;
d2r=(atan(1)/45); /* degrees to radians conversion factor */
do Date = &startdate to &enddate by 1;
t=Date-&bdate; /* days since birth */
/* similar to value=sin(2*pi * t/23) ... */
Value = sin((t/23)*360*d2r); id='Physical'; output;
Value = sin((t/28)*360*d2r); id='Emotional'; output;
Value = sin((t/33)*360*d2r); id='Intellectual'; output;
end;
run;
1
DATA mydata;
2
LENGTH id $15;
3
FORMAT date date9.;
4
FORMAT value percentn7.0;
5
d2r=(atan(1)/45); /* degrees to radians conversion factor */
6
DO Date = &startdate to &enddate BY1;
7
t=Date-&bdate; /* days since birth */
8
/* similar to value=sin(2*pi * t/23) ... */
9
Value = sin((t/23)*360*d2r); id='Physical'; OUTPUT;
10
Value = sin((t/28)*360*d2r); id='Emotional'; OUTPUT;
11
Value = sin((t/33)*360*d2r); id='Intellectual'; OUTPUT;
12
END;
13
RUN;
4 Bloque de código
PROC GPLOT
Explicación : Definición de los elementos gráficos (títulos, ejes, símbolos, leyenda) y creación del gráfico lineal de biorritmos con PROC GPLOT.
Este material se proporciona "tal cual" por We Are Cas. No hay garantías, expresas o implícitas, en cuanto a la comerciabilidad o idoneidad para un propósito particular con respecto a los materiales o el código contenidos en este documento. We Are Cas no es responsable de los errores en este material tal como existe ahora o existirá, ni We Are Cas proporciona soporte técnico para el mismo.
SAS y todos los demás nombres de productos o servicios de SAS Institute Inc. son marcas registradas o marcas comerciales de SAS Institute Inc. en los EE. UU. y otros países. ® indica registro en los EE. UU. WeAreCAS es un sitio comunitario independiente y no está afiliado a SAS Institute Inc.
Este sitio utiliza cookies técnicas y analíticas para mejorar su experiencia.
Saber más.