Publicado el :
Informes SASHELP

Estadísticas Simples con Gráfico de Dispersión y Líneas de Referencia

Este código también está disponible en: Deutsch English Français
Este script SAS© define una plantilla `STATGRAPH` llamada `simpleStats` para la visualización de datos. Genera un gráfico de dispersión (nube de puntos) que muestra la relación entre el precio minorista sugerido por el fabricante (msrp) y el consumo de combustible en carretera (mpg_highway), agrupado por tipo de vehículo. El gráfico se enriquece con líneas de referencia: una vertical que indica la mediana de `msrp`, y dos horizontales para la media de `mpg_highway` más/menos una desviación estándar. Se incluye una leyenda para los grupos de tipo, y una nota a pie de página dinámica que muestra el rango de peso mínimo/máximo de los vehículos. La plantilla se renderiza luego usando la tabla `sashelp.cars`.
Análisis de datos

Type : SASHELP


El script utiliza la tabla `cars` de la biblioteca interna `sashelp`, una fuente de datos estándar disponible en todas las instalaciones SAS.

1 Bloque de código
PROC TEMPLATE
Explicación :
Este bloque define una plantilla de gráfico `STATGRAPH` reutilizable llamada `simpleStats`. Especifica los elementos visuales del gráfico, incluyendo un título, un diseño superpuesto para combinar elementos gráficos, un gráfico de dispersión (`scatterPlot`) agrupado por la variable `type`, y líneas de referencia (`referenceLine`) calculadas dinámicamente usando funciones estadísticas (`median`, `mean`, `std`) y la función `eval`. Se agrega una leyenda discreta, así como una nota a pie de página (`entryFootnote`) que muestra estadísticas resumidas (min y max de `weight`) del conjunto de datos que se está renderizando. Esta plantilla encapsula la lógica de presentación del gráfico sin procesar los datos en esta etapa, lo que la hace reutilizable.
¡Copiado!
1PROC TEMPLATE;
2 define statgraph simpleStats;
3 beginGraph;
4 entryTitle "Simple Statistics using Expression";
5 layout overlay;
6 scatterPlot x=msrp y=mpg_highway / name="sp1"
7 group=type dataTransparency=0.2;
8 referenceLine x=eval(median(msrp)) / lineAttrs=(pattern=shortDash)
9 curveLabel="x(*ESC*){unicode '0303'x}" curveLabelAttrs=(size=12);
10 referenceLine y=eval(mean(mpg_highway) + std(mpg_highway)) /
11 curveLabel="x(*ESC*){unicode '0304'x} + (*ESC*){unicode sigma}"
12 curveLabelAttrs=(size=12) lineAttrs=(pattern=dashDashDot);
13 referenceLine y=eval(mean(mpg_highway) - std(mpg_highway)) /
14 curveLabel="x(*ESC*){unicode '0304'x} - (*ESC*){unicode sigma}"
15 curveLabelAttrs=(size=12) lineAttrs=(pattern=dashDashDot);
16 discreteLegend "sp1" / across=3 location=inside hAlign=right vAlign=top;
17 endLayout;
18 entryFootnote halign=left "Weight (in lbs) ranges from " eval(min(weight))
19 " to " eval(max(weight)) ;
20 endGraph;
21 END;
22RUN;
2 Bloque de código
PROC SGRENDER
Explicación :
Este bloque de código comienza restableciendo las opciones gráficas de ODS (`ods graphics / reset;`) para asegurar un entorno gráfico limpio y evitar interferencias con configuraciones anteriores. Luego, se utiliza el procedimiento `PROC SGRENDER` para generar el gráfico. Aplica la plantilla `simpleStats` definida previamente (a través de `template=simpleStats`) a los datos contenidos en la tabla `sashelp.cars` (a través de `data=sashelp.cars`). Esto produce la imagen del gráfico con todos los elementos especificados en la plantilla, utilizando las variables `msrp`, `mpg_highway`, `type` y `weight` de la tabla `cars` para la renderización final.
¡Copiado!
1ods graphics / reset;
2PROC SGRENDER
3DATA=sashelp.cars template=simpleStats;
4RUN;
5 
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.