Para el proyecto en el que estoy trabajando, nos ha llegado un requerimiento de generar un gráfico de líneas (basado en ejes X, Y) indicando las tendencias de un determinado comportamiento.
El proyecto utiliza actualmente ExtJs, y desde ya, fue considerado como primer opción, el motor de gráficos que este incluye. Uno de los problemas con que nos topamos al realizar la prueba de tecnología, es que al no presentarse un dato Y para un valor X, automáticamente lo tomaba como CERO, haciéndo que las líneas descendieran. Esto no es un comportamiento deseable en muchas situaciones (siempre depende de Qué se esté midiendo). Una vez descartado, comenzamos a evaluar otros frameworks. JQuery, cuenta con varios plugins para generar gráficos (muy buenos debo decir), pero se nos pidió no "mezclar" dos frameworks basados en Jscript (no es una decisión muy feliz, pero lo aceptamos). Luego de buscar bastante, el arquitecto en jefe de la aplicación, sugirió que investigáramos FusionCharts (Más precisamente su división PowerCharts), y quien les escribe, se ha encargado de la prueba de tecnología llegando a conclusiones muy favorables:
- Es altamente configurable (se puede especificar cada leyenda que aparece en pantalla, colores, escalas, tipo de gráfico, estilo de líneas, transparencias, etc. No solo del gráfico en general, o de una línea particular, sino también entre cualquier segmento entre 2 puntos e incluso cualquiera de los puntos).
- Por defecto, utiliza un archivo Flash para realizar los gráficos (esta versión comienza con una animación de lo que se esta dibujando). Si se detecta (automáticamente) que el navegador no soporta flash, el gráfico se renderiza 100% mediante Jscript (esto es útil para teléfonos celulares, o simplemente si no queremos instalar Shockwave en las máquinas de los usuarios).
- Sin realizar demasiado trabajo, arranca de quienes observan expresiones del estilo "WOW", y esto, muchas veces, hace la diferencia entre una aplicación exitosa y un hermoso algoritmo inutilizable.
- Es muy sencillo de utilizar y está bien documentado.
- Maneja una amplia variedad de tipos de gráficos.
Aquí dejo una prueba de tecnología, con algunos comentarios basados en los requerimientos que se me presentaron.