domingo, 9 de junio de 2013

Distintas formas de visualizar datos con gráficos

ENUNCIADO
En un entorno Microsoft quieres visualizar datos mediante gráficos ¿Qué alternativas tienes?
SOLUCIÓN
Cuando hablo de un entorno Microsoft quiero decir que dispones de Visual Studio y SQL Server, pero como veras no me restringiré a las herramientas incluidas en estos paquetes
Visual Studio  con Web Forms tienes una serie de controles para construir gráficos o crear un informe con procesado local. En cuanto a los controles no los he utilizado y no puedo decirte gran cosa sobre ellos. Sobre los informes los he utilizado poco porque al final los informes de servidor tienen mas capacidades. Nos ocuparemos en el siguiente párrafo tienen.
Si dispones de SQL Server puedes utilizar Reporting Services y  diseñarlos con Bussines Inteligence Developper Studio, BIDS en breve.
Las ventajas que aporta este entorno son:
  • Un interfaz gráfico durante el diseño
  • Orientado a la impresión
  • Exportación sencilla a distintos formatos.
Las desventajas que presenta son:
  • Aunque ofrece todos los gráficos clásicos, incluidos los mapas, se echan de menos algunos modelos, por ejemplo los gráficos jerárquicos. 
  • Ajustar los gráficos a los datos en tiempo de ejecución es complicado. (ver  mi ejemplo con mapas)
  • Interacción con los gráficos es limitada
  • Sin animación.
  • En proyectos MVC debes incorporar rutas webFoms.
El desarrollo es muy rápido una vez dominas el modelo conceptual y la exportación a PDF ofrece muchas ventajas, entre otras la capacidad de remitir por eMail los informes.
Pero ¿qué soluciones tienes si quieres gráficos con mas personalización e interactividad?
Entonces debes recurrir a librerías javaScript y preferiblemente proyectos MVC (en un entorno Microsoft, insisto).
¿Qué librerias javaScript utilizar?
La solución mas simple es Google Charts, te ofrece una mayor variedad de gráficos y no hace falta que seas un experto en java.
En cuatro horas desarrollé un gráfico jerárquico de países por distintas clasificaciones y magnitudes, ... pero la presentación resultó demasiado simple comparada con los gráficos obtenidos con Report Server y no triunfó entre mis 'clientes'.
Puedes conseguir mejores resultados con infoVis, Pero mi apuesta en cuanto tenga un proyecto complejo es la librería Data-Driven Documents (D3),  te sugiero que te dediques a navegar entre los ejemplos y entenderás por qué.
 

No hay comentarios: