viernes, 31 de mayo de 2013

GeoFlow Preview para Excel 2013

Excel se está consolidando como una poderosa herramienta para consumo y análisis de datos, especialmente en el ámbito del Business Intelligence personal o Self-Service BI. En la versión 2013 ya tiene integradas de forma nativa la tecnología xVelocity, el add-in PowerPivot y Power View. Pero además  Microsoft ha hecho pública la preview de un nuevo complemento que nos permitirá representar nuestros datos posicionándolos geográficamente, en un entorno de visualización tridimensional con un interfaz de usuario que se enmarca perfectamente dentro del estilo Office. Estamos hablando de GeoFlow, aunque quizás este nombre cambie más adelante.

Este complemento utiliza mapas de Bing y renderiza los datos que pueda ubicar a través de coordenadas o nombres de ciudades estados, provincias y países y nos permitirá realizar análisis, detectar patrones, obtener una vista en forma de secuencia cinematográfica a través del tiempo, etc..

Ya puedes descargarte e instalar esta versión

Llevaba algún tiempo queriendo conocer más acerca de este producto, ya que se han ido publicando algunas cosas (http://sqlserverbiblog.wordpress.com/2013/03/05/sql-server-community-world-tour-with-geoflow/) en la red antes de que se hiciera pública esta preview.

Por fin he tenido oportunidad de instalarlo y probarlo, y ciertamente es muy sencillo de manejar para crear presentaciones realmente impresionantes.El unico requisito fundamental es contar con un rango de datos dentro de Excel que contengan información que permita posicionar los datos en un mapa, como mencionamos arriba, a través de coordenadas o nombre de la ubicación. Para hacer mis primeras pruebas con GeoFlow he utilizado un pequeño conjunto de datos con los Tweets que se han publicado desde el día 14/03/2013  y que contienen las palabras @SolidQ, @SolidQEs, @SolidQIT, #SQSummit13 y #SolidQ.

Cuando pensé en utilizar este conjunto de datos no esperaba unos resultados positivos, ya que la mayoría de los tweets no tienen una localización muy clara. Aunque muchos usuarios tienen activado el uso de la geolocalización al publicar los tweets, esta información no siempre se encuentra registrada en el tweet. De forma que la unica forma viable que encontré de poder posicionar los datos fue por la propia localización del usuario, aquella que se configura en el perfil…. y en dónde se puede poner lo que uno quiera:

image

Como se puede comprobar en las columnas TweetLatitude y TweetLongitude encontramos un hermoso 0, aunque la columna UserGeoEnabled tenga un valor TRUE. Por tanto nos quedamos con la columna UserLocation y vamos a ver que es capaz de hacer GeoFlow con esa información.

Una vez hemos descargado e instalado el complemento, en la cinta de Insertar  de Excel aparece el grupo GeoFlow, que contiene un solo botón con dos comandos: Iniciar GeoFlow y Añadir datos seleccionados a GeoFlow, e inicialmente solo aparece activado el primero:

image

 

Si lanzamos GeoFlow nos aparecerá una ventana con cuatro areas.

  • En la parte superior disponemos de la cinta Inicio, con las opciones disponibles: cambiar el tema del mapa pudiendo seleccionar un mapa geográfico o político con distintas iluminaciones, insertar gráficos o cajas de texto, añadir capas, buscar geolocalizaciones, capturar la vista mostrada, etc..
  • El panel de escenas del “tour”, situado a la izquierda. A través de este panel podemos seleccionar y configurar las distintas escenas que componen nuestro “tour”
  • El panel de tareas, desde el que podremos configurar el elemento seleccionado, ya sean las propiedades de las escenas o las distintas capas visuales que podemos añadir al mapa.
  • Y por fin el área central, dónde figura el globo terraqueo y en el que podemos visualizar los datos geo posicionados y animaciones a través del tiemp que vayamos configurando en las distintas capas.

 

image

En una misma escena podemos tener varias capas y en cada capa configurar una visualización de datos. Para mis pruebas he utilizado una sola escena con dos capas, en la primera capa muestro columnas agrupadas con número de tweets que se van produciendo a lo largo del tiempo, y para crear los grupos utilizo la palabra asociada (@SolidQ, @SolidQEs, @SolidQIT, #SQSummit13 y #SolidQ). En la segunda capa mostraré el número de usuarios que están publicando esos tweets, y el lenguaje que tienen configurado.

Por defecto nos aparecerá una capa, Layer1, a la que podemos cambiar el nombre a través del panel de tareas pulsando el botón image que encontramos en la parte superior del panel. Desde aqui podemos elegir si se muestra o no cada capa, configurarla o eliminarla. La siguiente imagen muestra una breve descripción de la función de cada botón que encontramos en el panel de tareas cuando seleccionamos la vista de capas:

 

image

 

Una vez tenemos establecido el nombre de la capa, accedemos al botón 'Configuración de datos de la capa’ y veremos la lista de campos disponibles. Esta lista de campos depende de las tablas que existan en el modelo de datos del libro Excel y que hayamos añadido a GeoFlow (desde el botón de la cinta Insertar).

Llegados a este punto debemos definir como se van a localizar los datos. Para ello en la parte inferior de la lista de campos vemos una sección con el título Geography. Es en esta sección dónde debemos arrastrar y solar los campos que demarcan ubicación. Para este ejemplo recordad que utilizaremos la columna UserLocation y la vamos a configurar de tipo City, y solo queda pulsar el botón Map it para poder continuar.

image

A continuación la lista de campos toma otro aspecto, en la parte superior (bajo el desplegable de selección de capas) aparece una sección con el nombre de Map by UserLocation (county) junto a un botón Edit y justo abajo un porcentaje:

image

Ese 25% siginifica que ha sido capaz de ubicar correctamente la cuarta parte de los registros utilizando el contenido de la columna UserLocation como identificadores para regiones de tipo City. No es mucho, así que me he creado una columna para insertar el país y asi subir el porcentaje de localizaciones de tipo ciudad hasta un 56%…

image

 

Lo siguiente es configurar la representación gráfica de datos en el mapa. Podemos elegir para cada capa entre gráficos de tipo columnas (agrupadas o apiladas), burbúja o mapa de calor, pero antes vamos a añadir datos a las distintas secciones: Height (peso), Category (categoría) y Time (tiempo).

  • Height: Asignamos la columna TweetID y se cambia la función de agregación por Count() en lugar de Sum(). Esto hará que las columnas crezcan según el número de tweets.
  • Category: Arrastrar la columna TokenWord para que por cada una de las palabras clave cree una columna.
  • Time: En esta sección añado la columna Created_at que representa la fecha de publicación del tweet. Una vez añadimos el campo a la sección aparece un menú desplegable que nos permite cambiar la unidad en que se mostrará la linea de tiempo. Además podemos cambiar la configuración de tiempo en Time Settings haciendo posible que cuando se visualicen los datos a través de la línea de tiempo, se representen de distintas formas
    • Instant: Se mostrarán los datos correspondientes a cada momento del tiempo según se avance.
    • Time Accumulation: Se mostrará un crecimiento paulatino acumulando los valores segun avance el tiempo.
    • Persist the Last:  Muestra el último valor para el periodo y avance.

image

 

Si pulsamos el botón de reproducción en la línea de tiempo, podemos observar como se representan los datos según la configuración que hayamos puesto para el tiempo. Además se puede controlar el ritmo al que avanza esta linea de tiempo y acotar los margenes entre el rango de fechas existente, a través del botón de configuración que encontramos en la mismo control de reproducción del tiempo:

image

 

Echo en falta la posibilidad de exportar los “Tour” creados en algun formato (video, PowerPoint) o incrustar escenas en una hoja de Excel junto a otras presentaciones gráficas, además de la posibilidad de profundizar en los datos… pero aún estamos con la versión Preview Sonrisa

Entradas populares