Aunque esta es una vieja pregunta.
Como la respuesta aceptada no funcionó para mí y tampoco pude encontrar una solución en los documentos jqPlot. Vine a esta solución
var series = [[1,2],[2,3]];
chartObj.replot({data:series});
Src: Echando un vistazo a la función replot
.
function (am) {
var an = am || {};
var ap = an.data || null;
var al = (an.clear === false) ? false : true;
var ao = an.resetAxes || false;
delete an.data;
delete an.clear;
delete an.resetAxes;
this.target.trigger("jqplotPreReplot");
if (al) {
this.destroy()
}
if (ap || !L.isEmptyObject(an)) {
this.reInitialize(ap, an)
} else {
this.quickInit()
} if (ao) {
this.resetAxesScale(ao, an.axes)
}
this.draw();
this.target.trigger("jqplotPostReplot")
}
La línea if (ap || !L.isEmptyObject(an)) { this.reInitialize(ap, an) }
nos muestra que necesita un valor Truthy para ap a pasarlo como primer parámetro a la función reinitialize interna. que se define como var ap = an.data || null;
Es tan simple como esto, pero por desgracia no documentado en cualquier lugar que podría encontrar que
Tenga en cuenta que si desea volver a dibujar algunas cosas definidas en las opciones de jqPlot, como etiquetas de leyenda, se puede simplemente pasar cualquier opción a la función de repuesta. Sólo recuerde la serie real a Replot tiene que ser llamado "datos"
var options = {
series : [{
label: 'Replotted Series',
linePattern: 'dashed'
}],
//^^^ The options for the plot
data : [[1,2],[2,3]]
//^^^ The actual series which should get reploted
}
chartObj.replot (options)
¿Me podría decir cómo utilizar el trazado en el caso de que yo tenga un gráfico circular? No parece la respuesta de grilix a trabajar para yo. – Sohaib