2013-11-04 16 views
5

Ho realizzato un grafico a linee con AngularJS e d3. L'asse x mostra una scala temporale su mesi (da febbraio a ottobre). Quindi le zecche sono etichettate con febbraio, marzo, ... ottobre. Come posso ottenere le zecche in altre lingue oltre all'inglese? Ad esempio se la mia app è in tedesco mi piace avere i nomi dei mesi tedeschi.d3.js - etichetta della scala temporale in lingue diverse dall'inglese

+2

possibile duplicato di [Come rendere la localizzazione su mesi/giorni per D3js?] (Http://stackoverflow.com/questions/19274464/how-to-make-localization-on-months-days-for-d3js) –

+1

@Lars: ho letto il tuo consiglio per ricompilare d3.js (e d3.min.js) su una macchina con le impostazioni locali. Quindi per un'app multilingue devo avere le versioni di d3.js/d3.min.js in tutte le lingue supportate e quindi decidere quale script includere? Non c'è altro modo? Dato che sono nuovo di AngularJS e d3, qualsiasi suggerimento sarebbe utile. – sasa

+0

Avere più versioni sarebbe sicuramente il modo più semplice. È inoltre possibile modificare D3 per includere la matrice di nomi da un'altra fonte, ma ciò richiederebbe un maggiore sforzo da parte dell'utente. –

risposta

0

La soluzione di Lars sta lavorando: Ricompilare d3.js su una macchina con le impostazioni tedesche e comprendente d3.de_DE.js invece di d3.js dà il tempo di scala con nomi tedeschi. Nella sorgente si trovano i file src/time/format-localized.js e src/format/format-localized.js con le impostazioni inglesi.

+0

Sfortunatamente qualsiasi libreria con patch complica i processi di aggiornamento. Mike Bostock si è attivato su una filiale locale a questo problema. Sembra essere una prima bozza, ma forse è utile per te. Si prega di dare un'occhiata a https://github.com/mbostock/d3/commit/30590de15f9b7cccf3fe4cc656702c2dfcc287ea – dsuess