Publicado el :
Visualización CREACIÓN_INTERNA

Frecuencia de los signos del zodiaco con símbolos Unicode

Este código también está disponible en: Deutsch English Français
En espera de validación
El script comienza creando un conjunto de datos interno 'zodiacs' que contiene nombres de signos del zodiaco y sus frecuencias respectivas. Luego, define un formato personalizado 'zodiacSymbol' que asocia cada signo con su símbolo Unicode correspondiente. A continuación, se crea una plantilla de gráfico STATGRAPH, 'unicodeUDF', para especificar la estructura de un gráfico de barras donde las etiquetas del eje X usarán este formato Unicode. Finalmente, se utiliza PROC SGRENDER para producir el gráfico basándose en la plantilla definida y los datos 'zodiacs', formateando también la variable de frecuencia en porcentajes para una mejor legibilidad.
Análisis de datos

Type : CREACIÓN_INTERNA


Los datos utilizados ('zodiacs') se crean directamente en el script SAS a través de un paso DATA y la instrucción DATALINES, lo que significa que son internos al script y no provienen de una fuente externa.

1 Bloque de código
DATA STEP Data
Explicación :
Este bloque crea el conjunto de datos 'zodiacs'. Define la variable 'Sign' como un carácter de 12 caracteres y 'Frequency' como un número. Los datos se leen luego de las líneas de datos (datalines) directamente integradas en el script.
¡Copiado!
1DATA zodiacs;
2 LENGTH Sign $12;
3 INPUT Sign $ Frequency;
4 DATALINES;
5 Scorpio 0.094
6 Virgo 0.090
7 Gemini 0.090
8 Sagittarius 0.073
9 Leo 0.069
10 Aquarius 0.055
11 ;
12RUN;
2 Bloque de código
PROC FORMAT
Explicación :
Este bloque utiliza PROC FORMAT para definir un formato de usuario llamado '$zodiacSymbol'. Este formato es esencial para mapear cada signo del zodiaco a su símbolo Unicode correspondiente. Esto permite mostrar los símbolos gráficos directamente en el eje del gráfico.
¡Copiado!
1PROC FORMAT;
2 value $ zodiacSymbol
3 'Scorpio' = "(*ESC*){unicode '264F'x}" /* NOTE: unicode expects U16BE */
4 'Virgo' = "(*ESC*){unicode '264D'x}"
5 'Gemini' = "(*ESC*){unicode '264A'x}"
6 'Sagittarius' = "(*ESC*){unicode '2650'x}"
7 'Leo' = "(*ESC*){unicode '264C'x}"
8 'Aquarius' = "(*ESC*){unicode '2652'x}"
9 ;
10RUN;
3 Bloque de código
PROC TEMPLATE
Explicación :
Este bloque define una plantilla STATGRAPH llamada 'unicodeUDF'. Configura un gráfico de barras (barChartParm) con un título. La opción crucial es 'xAxisOpts', que utiliza el formato '$zodiacSymbol' definido anteriormente para mostrar los símbolos Unicode en el eje X, mejorando así la visualización de las categorías.
¡Copiado!
1PROC TEMPLATE;
2 define statgraph unicodeUDF;
3 beginGraph;
4 entryTitle "Zodiac Frequency: Unicode Tick Values using User Defined Format";
5 layout overlay / xAxisOpts=(tickValueAttrs=GraphUnicodeText(size=14)
6 display=(tickvalues)
7 discreteOpts=(tickValueFormat=$zodiacSymbol.)
8 );
9 barChartParm x=Sign y=Frequency / dataTransparency=0.3
10 dataLabel=Sign;
11 endLayout;
12 endGraph;
13 END;
14RUN;
4 Bloque de código
PROC SGRENDER
Explicación :
Este bloque utiliza PROC SGRENDER para generar el gráfico basándose en la plantilla 'unicodeUDF' y el conjunto de datos 'zodiacs'. La instrucción 'format Frequency percent.' aplica un formato de porcentaje a la variable 'Frequency', haciendo que los valores sean más intuitivos en el gráfico.
¡Copiado!
1 
2PROC SGRENDER template=unicodeUDF
3DATA=zodiacs;
4FORMAT Frequency percent. ;
5RUN;
6 
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.