Para muchos de ustedes no es nuevo saber que SAS puede producir mapas en 2D y 3D que muestran las variaciones de un variable con respecto a un área geográfica utilizando el procedimiento GMAP. Adicionalmente, SAS provee un conjunto bastante amplio de mapas, revisen la librería Maps que viene por defecto en su instalación de SAS Base o Enterprise Guide.
Es importante destacar que para el uso de este procedimiento es necesario tener licencia de SAS/Graph.
Para crear un mapa temático necesitamos básicamente 2 elementos:
• Un data set que contenga la información geo-espacial, en otras palabras nuestro mapa.
• Y un data set que contenga la variable que necesitamos analizar o visualizar, por ejemplo, nro de habitantes por provincia, nro de hospitales por estado, porcentaje de hoteles 5 estrellas etc etc etc.
Antes de continuar con nuestro ejemplo quiero que le echen un vistazo a la librería Maps. Como podrán ver, existen 2 mapas para cada país (realmente no se si esta librería contiene todos los países), los cuales hacen referencia al nombre del país, uno de ellos tiene un número 2 como sufijo, por ejemplo: Spain y Spain2, Mexico y Mexico2.
Los primeros (los que no tienen el sufijo) contienen la información geo-referencial del mapa en cuestión, es decir, las coordenadas cartesianas de nuestro mapa. Los segundos contiene la información referente a la división político territorial del país, en algunos casos algunos data sets contienen mas información que otros (ver Spain2 y Mexico2).
Ahora bien para generar nuestro mapa necesitamos unir el data set de análisis con nuestro mapa. Aquí tienen un ejemplo sencillo. También podrán ver el mismo ejemplo usando las opciones Prism y Choro para crear mapas 3D y 2D respectivamente.
En este ejemplo vamos a simular la temperatura media por Provincia en España.
1- Creamos nuestro data set de análisis a partir de maps.spain2 para facilitar las cosas y vamos a crear una variable aleatoria llamada temperatura que contendrá los valores medios por provincia
Data spain_rnd;
set maps.spain2(keep=id idname);
idname=Propcase(idname);
temperatura=Int((45 - 25 + 1) * ranuni(0)) + 25;
where id ne 999;
run;
2- Creamos nuestro mapa 3D usando GMAP y la opción Prism
title "Temperatura media por Provincia";
proc gmap data = spain_rnd map=maps.spain;
id id;
prism temperatura / coutline=gray;
run;
quit;
3- Ahora nuestro mapa 2D usando la opción Choro.
title "Temperatura media por Provincia";
proc gmap data = spain_rnd map=maps.spain;
id id;
choro temperatura / coutline=gray;
run;
quit;
SASludos,
Alberto
Mapas, Mapas y GMAP
Publicado por
Alberto Negron
18 de mayo de 2009
Suscribirse a:
Enviar comentarios (Atom)

0 comentarios:
Publicar un comentario en la entrada