2011-08-27 19 views
5

Básicamente, quiero que el usuario pueda cambiar el tipo de gráfico haciendo clic en un menú desplegable: BarRenderer, PieRenderer, etc. Los datos son los mismos. Sé que puedo llamar a $ .jqplot() nuevamente en el mismo elemento, pero luego tendré que volver a pasar toda la configuración. Y mi página tiene una cantidad variable de gráficos, lo que hace que esa opción sea una muy mala elección.¿Cómo cambiar dinámicamente el renderizador jqplot?

Encontré un enlace sobre esto: http://groups.google.com/group/jqplot-users/browse_thread/thread/efe6511cd9496f16/5c625baf78d3b0ae pero parece que todavía tengo que llamar $ .jqplot() de nuevo.

¿Hay una mejor manera de hacerlo? Y una pequeña pregunta más: ¿soy solo yo, o la documentación en jqplot es mala? Tengo que buscar en varios lugares para encontrar la opción que quiero (y, a veces, la opción no está documentada, o no pude encontrarla de alguna manera). ¿Cómo aprendes a usar jqplot?

+0

Actualizar los datos y Replot 'plot1.series [0] = .data newData; plot1.resetAxesScale(); plot1.replot(); 'http://stackoverflow.com/a/10901538/516748 – KCD

Respuesta

5

Creo que los documentos están bien, pero encontrará características ocultas en su interior o peculiaridades que no están documentadas. IIRC (ha pasado un tiempo) tendrá que volver a llamar a $ .jqplot(), pero primero necesita .empty() su objetivo o obtendrá lienzos extra/desordenados.

Lo que realmente necesita hacer es guardar los datos y permitir que se llamará más tarde:

//This isn't real jqplot syntax but it should give you a good idea of what I'm explaining 

var charts = [{name:"chart1",renderer:"pie",data:[[1,2],[2,3]]}] 
$('#graph').jqplot(charts[0]); 

//later 
charts[0].renderer = "bar"; 
$('#graph').empty().jqplot(charts[0]); 
+2

Asegúrese de llamar a destroy() en su gráfico antes de esa llamada para vaciar() o tendrá pérdidas de memoria. Guarde el gráfico devuelto por la primera llamada a jqplot a una variable, luego en la sección "posterior", llame a chart.destroy(); antes de reconstruir la trama –

Cuestiones relacionadas