Formatierung der Zeitzone von Google Charts-Datetime-Achsenbeschriftungen

Ich verwende GoogleCharts, um ein Liniendiagramm mit dem Typ "Datum / Uhrzeit" entlang einer Achse zu zeichnen. Ich möchte die Achsenbeschriftungen so formatieren, dass sie die Zeiten in einer bestimmten Zeitzone anstelle der Standard-Browser-Zeitzone anzeigen.

Vom Lesen der Dokumentation gibt es einDatumsforma -Objekt, das mit einer 'timeZone'-Option versehen und dann mit dem entsprechenden @ aufgerufen werden kaDataTable und Spalte, um alle Zellen in dieser Spalte zu formatieren. Ich habe festgestellt, dass dies zu Werten führt, die korrekt formatiert sind, wenn dasDataTable wird als Tabelle gezeichnet. Dieselbe Formatierung gilt jedoch nicht für Achsenbeschriftungen in Diagrammen wieLineChart oderBar.

Hier ist mein Code:

var dataTable = new google.visualization.DataTable();

dataTable.addColumn('datetime', 'Time');
dataTable.addColumn('number', 'Wolves');
dataTable.addRows([
  [new Date(2020, 1, 1, 12), 1],
  [new Date(2020, 1, 1, 13), 3]
]);

// Create DateFormat with a timezone offset of -4
var dateFormat = new google.visualization.DateFormat({formatType: 'long', timeZone: -4});

// Format the first column
dateFormat.format(dataTable, 0);

dataTable.getFormattedValue(0, 0); // "February 1, 2020 at 8:00:00 AM UTC-4"

var table = new google.visualization.Table(document.getElementById('wolf_table'));
table.draw(dataTable);

var lineChart = new google.visualization.LineChart(document.getElementById('wolf_chart'));
lineChart.draw(dataTable);

Hier sind die resultierenden Diagramme:

Beachten Sie, wie die Tabelle korrekt formatierte Zeiten in den entsprechenden Zellen anzeigt, während die Achsen des Liniendiagramms die Browserzeit (in diesem Fall GMT) anzeigen.

Ist es möglich, die Zeitzonenformate der Achsenbeschriftungen des Liniendiagramms zu ändern? Gibt es etwas, das mir fehlen könnte?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage