Hola a todos tengo el siguiente código en un template:
Morris.Area({
element: 'morris-area-chart',
data: [{
period: '2010-09-08',
iphone: 2666,
ipad: null,
itouch: 2647
}, {
period: '2010-08-08',
iphone: 2778,
ipad: 2294,
itouch: 2441
}, {
period: '2010-09-07',
iphone: 4912,
ipad: 1969,
itouch: 2501
}, {
period: '2010-09-05',
iphone: 3767,
ipad: 3597,
itouch: 5689
}, {
period: '2010-09-03',
iphone: 6810,
ipad: 1914,
itouch: 2293
}, {
period: '2010-09-01',
iphone: 5670,
ipad: 4293,
itouch: 1881
}, {
period: '2009-09-08',
iphone: 4820,
ipad: 3795,
itouch: 1588
}, {
period: '2009-09-02',
iphone: 15073,
ipad: 5967,
itouch: 5175
}, {
period: '2009-09-01',
iphone: 10687,
ipad: 4460,
itouch: 2028
}, {
period: '2009-03-08',
iphone: 8432,
ipad: 5713,
itouch: 1791
}],
xkey: 'period',
ykeys: ['iphone', 'ipad', 'itouch'],
labels: ['iPhone', 'iPad', 'iPod Touch'],
pointSize: 2,
hideHover: 'auto',
resize: true
});
Como podría agregar nuevos valores:
{
period: '2019-09-01',
iphone: 10687,
ipad: 4430,
itouch: 2238
}
saludos
Morris.Area.Data.push({ nuevovalor });
Salu2
Eso no es JSON, es simplemente un arreglo de objetos.
Si miras, el prototipo de la instancia creada por Morris te darías cuenta que hay un método setData:
var data = [{
period: '2010-09-08',
iphone: 2666,
ipad: null,
itouch: 2647
}, {
period: '2010-08-08',
iphone: 2778,
ipad: 2294,
itouch: 2441
}, {
period: '2010-09-07',
iphone: 4912,
ipad: 1969,
itouch: 2501
}, {
period: '2010-09-05',
iphone: 3767,
ipad: 3597,
itouch: 5689
}, {
period: '2010-09-03',
iphone: 6810,
ipad: 1914,
itouch: 2293
}, {
period: '2010-09-01',
iphone: 5670,
ipad: 4293,
itouch: 1881
}, {
period: '2009-09-08',
iphone: 4820,
ipad: 3795,
itouch: 1588
}, {
period: '2009-09-02',
iphone: 15073,
ipad: 5967,
itouch: 5175
}, {
period: '2009-09-01',
iphone: 10687,
ipad: 4460,
itouch: 2028
}, {
period: '2009-03-08',
iphone: 8432,
ipad: 5713,
itouch: 1791
}];
var area = Morris.Area({
element: 'morris-area-chart',
data: data,
xkey: 'period',
ykeys: ['iphone', 'ipad', 'itouch'],
labels: ['iPhone', 'iPad', 'iPod Touch'],
pointSize: 2,
hideHover: 'auto',
resize: true
});
//agrega:
data.push({
period: '2019-09-01',
iphone: 10687,
ipad: 4430,
itouch: 2238
});
area.setData(data, true);//redibuja
No puedo conocer todas las librerías del mundo. Según su código, lo que yo le puse creo que no está mal.
Salu2
Hola a ambos, muchas gracias por sus respuestas, ambas estaban en lo correcto, creo que por una parte me faltó leer un poco más la documentación y por otra investigar bien la estructura de JSON, aun así está todo solucionado en base a lo que me escribieron, saludos y gracias ;-)