2013-07-03 13 views

risposta

7

si può "hack" questo avendo una matrice vuota che contiene un array vuoto:

data2 = [ 
    { 
    "key" : "A key" , 
    "values" : [[]] 
    } 
]; 
+0

Possiamo avere un messaggio personalizzato al posto di nessuna tabella o un messaggio "Non sono disponibili dati"? – Dinesh

+0

Dovresti modificare la sorgente per quello che penso. –

+0

Devo modificare lo scatter.js? Ma non ho trovato nessun messaggio Nessun dato disponibile lì – Dinesh

4

La risposta fornita da Lars funziona bene quando non si desidera visualizzare il messaggio noData su un grafico quando il suo vuoto.

Recentemente ho avuto grafici con contenuto caricato in modo dinamico. Ho trovato una domanda simile a questo Updating with no data does not clear old data from the chart.

Se un grafico è popolato con dati e quindi l'aggiornamento è chiamato dopo che i dati è stato svuotato, il NODATA testo sarà sovrapporre i dati esistenti.

Considerare se i dati correnti devono essere cancellati dal grafico in quanto può essere fonte di confusione per vedere entrambi allo stesso tempo.

non ero in grado di trovare una soluzione pulita per che, quindi ecco quello che ho fatto per superarla:

Utilizzato Lars risposta per svuotare il grafico:

data2 = [{ 
    "key" : "A key", 
    "values" : [[]] 
}]; 

E poi ha aggiunto il codice qui sotto.

d3.select('#chart svg').append("text") 
     .attr("x", "235") 
     .attr("y", "35") 
     .attr("dy", "-.7em") 
     .attr("class", "nvd3 nv-noData") 
     .style("text-anchor", "middle") 
     .text("My Custom No Data Message"); 

anche io sono dopo una soluzione adeguata per esso, per visualizzare il testo NODATA senza sovrapporre i dati esistenti. Ma per ora funziona perfettamente.

Spero che possa aiutare qualcuno, cercando di ottenere la stessa cosa.

5

è possibile chiamare noData e passare una stringa durante la creazione tabella:

(CoffeeScript)

self.chart = nv.models.lineChart() 
       .margin left: 100, right: 100 
       .useInteractiveGuideline true 
       .transitionDuration 150 
       .showLegend true 
       .showYAxis true 
       .showXAxis true 
       .noData 'no data, there is' 
Problemi correlati