2013-11-04 16 views
5

Ich habe ein Liniendiagramm mit AngularJS und d3 realisiert. Die X-Achse zeigt eine Zeitskala über Monate (Februar bis Oktober). So sind die Zecken mit Februar, März, ... Oktober gekennzeichnet. Wie kann ich die Ticks in anderen Sprachen als Englisch bekommen? Zum Beispiel, wenn meine App auf Deutsch ist, möchte ich die deutschen Monatsnamen haben.d3.js - Zeitskala Etikett in anderen Sprachen als Englisch

+2

mögliche Duplikate von [Wie Lokalisierung für D3js an Monaten/Tagen zu machen?] (Http://stackoverflow.com/questions/19274464/how-to-make-localization-on-months-days-for-d3js) –

+1

@Lars: Ich habe Ihren Rat gelesen, d3.js (und d3.min.js) auf einem Rechner mit den Gebietsschemaeinstellungen neu zu kompilieren. Also für eine mehrsprachige App muss ich Versionen von d3.js/d3.min.js in allen unterstützten Sprachen haben und dann entscheiden, welches Skript enthalten sein soll? Gibt es keinen anderen Weg? Da ich neu bei AngularJS und d3 bin, wären Hinweise hilfreich. – sasa

+0

Mit mehreren Versionen wäre sicherlich der einfachste Weg. Sie können D3 auch ändern, um das Array von Namen aus einer anderen Quelle aufzunehmen. Dies würde jedoch mehr Aufwand erfordern. –

Antwort

0

Die Lösung von Lars funktioniert: Neukompilieren von d3.js auf einer Maschine mit deutschen Einstellungen und einschließlich d3.de_DE.js statt d3.js gibt die Zeitskala mit deutschen Namen. In der Quelle finden Sie die Dateien src/time/format-localized.js und src/format/format-localized.js mit den englischen Einstellungen.

+0

Leider erschwert jede gepatchte Bibliothek Update-Prozesse. Mike Bostock hat sich zu diesem Thema auf einen Locale-Zweig festgelegt. Es scheint ein erster Entwurf zu sein, aber vielleicht ist es hilfreich für Sie. Bitte werfen Sie einen Blick auf https://github.com/mbostock/d3/commit/30590de15f9b7cccf3fe4cc656702c2dfcc287ea – dsuess

Verwandte Themen