Salve
Per creare un grafico in uno script uso un plugin di jquery FLOT, quest'ultimo necessita di un array di questo tipo:
codice:
({98297:{data:[[1350329714000, 2848885]], label:"pippo"}, '@mine@':{data:[[1350329714000, 1325180]], label:"pluto"}, 151085:{data:[[1350329714000, 1002500]], label:"paperino"}})
Nell'elaborare i dati ho la necessità di limitare i valori del grafico ad un massimo di 10 valori. Quando una delle serie raggiunge il numero massimo, cancello i dati con la data più vecchia, ora il mio problema è che ci potrebbero essere delle serie in cui i dati si azzerano risultando non più visibili nel grafico ma rimangono vuoti all'interno della matrice. Io vorrei cancellare tutte le serie senza dati.
Il codice che ho inserito è il seguente:
codice:
	//controllo la quantità dei dati inseriti
	var delData = 0;
	$.each(realTrend, function()	//controlla il numero dei dati esistenti e salva la data per eliminare i dati
	{
		if(this.data.length > 10) 
		{
			delData = this.data[0][0]
			return false;
		}
	});
	if (delData > 0)	//cancella il più vecchio valore se si supera il massimo dei valori da registrare
	{
		var jj = 0						//id array della serie da cancellare
		var indexDel = [];				//arrey delle serie da eliminare
		$.each(realTrend, function()	//cancella la data più vecchia
		{
			if(this.data[0][0] <= delData) this.data.shift()
			if(this.data.length <= 0) indexDel.push(jj)			//se la serie è vuota la segna da cancellare
			jj++
		});
		$.each(indexDel.reverse(), function()	//cancella serie di dati vuoti
		{
			realTrend..splice(this,1)
		});
	}
Mi chiedo se c'è la possibilità di evitare un array di appoggio per cancellare sucessivamente le serie vuote?