Javascript 如何在amcharts中设置静态默认时区

Javascript 如何在amcharts中设置静态默认时区,javascript,charts,amcharts,amcharts4,Javascript,Charts,Amcharts,Amcharts4,我有一个带有时间戳的数据的小数据库,在几天内。我的问题是我住在GMT+2(CEST),并且我的图表的日期轴(x)偏移错误。 如图所示,时间显示在小时的00:00(日期开关,因此显示为新的一天)和12:00上。但实际上,工具提示显示数据实际上是6小时后的数据。 我使用下面的代码生成图形,并使用php和所需格式的getTemperatures函数加载数据 am4core.ready(function() { // Themes begin am4core.useTheme(am4them

我有一个带有时间戳的数据的小数据库,在几天内。我的问题是我住在GMT+2(CEST),并且我的图表的日期轴(x)偏移错误。 如图所示,时间显示在小时的00:00(日期开关,因此显示为新的一天)和12:00上。但实际上,工具提示显示数据实际上是6小时后的数据。

我使用下面的代码生成图形,并使用php和所需格式的
getTemperatures
函数加载数据

am4core.ready(function() {

  // Themes begin
  am4core.useTheme(am4themes_animated);
  // Themes end

  var chart = am4core.create("chart", am4charts.XYChart);
  chart.dateFormatter.inputDateFormat = "yyyy-MM-dd HH:mm:ss";
  chart.data = <?=json_encode(getTemperatures())?>;

  // Create axes
  var dateAxis = chart.xAxes.push(new am4charts.DateAxis());
  dateAxis.renderer.grid.template.location = 0.5;
  dateAxis.renderer.labels.template.location = 0.5;
  dateAxis.renderer.minGridDistance = 60;

  dateAxis.dateFormats.setKey("second", "HH:mm:ss");
  dateAxis.dateFormats.setKey("minute", "HH:mm");
  dateAxis.dateFormats.setKey("hour", "HH:mm");
  dateAxis.dateFormats.setKey("day", "dt");

  dateAxis.periodChangeDateFormats.setKey("minute", "HH:mm");
  dateAxis.periodChangeDateFormats.setKey("hour", "dt");
  dateAxis.periodChangeDateFormats.setKey("day", "MMMM dt");
  dateAxis.periodChangeDateFormats.setKey("month", "MMMM");
  dateAxis.baseInterval = {
    "timeUnit": "second",
    "count": 30
  };

  var valueAxis = chart.yAxes.push(new am4charts.ValueAxis());

  // Create series
  var series = chart.series.push(new am4charts.LineSeries());
  series.dataFields.valueY = "temperature";
  series.dataFields.dateX = "atDate";
  series.tooltipText = "{dateX.formatDate('yyyy-MM-dd HH:mm:ss')}\n {temperature}"

  series.tooltip.pointerOrientation = "vertical";

  chart.cursor = new am4charts.XYCursor();
  chart.cursor.snapToSeries = series;
  chart.cursor.xAxis = dateAxis;

  //chart.scrollbarY = new am4core.Scrollbar();
  chart.scrollbarX = new am4core.Scrollbar();

  });
am4core.ready(函数(){
//主题开始
am4core.useTheme(am4themes_动画);
//主题结束
var chart=am4core.create(“chart”,am4charts.XYChart);
chart.dateFormatter.inputDateFormat=“yyyy-MM-dd HH:MM:ss”;
chart.data=;
//创建轴
var dateAxis=chart.xAxes.push(新的am4charts.dateAxis());
dateAxis.renderer.grid.template.location=0.5;
dateAxis.renderer.labels.template.location=0.5;
dateAxis.renderer.minGridDistance=60;
dateAxis.dateFormats.setKey(“第二”,“HH:mm:ss”);
dateAxis.dateFormats.setKey(“分钟”,“HH:mm”);
dateAxis.dateFormats.setKey(“小时”,“小时:毫米”);
dateAxis.dateFormats.setKey(“day”,“dt”);
dateAxis.periodChangeDateFormats.setKey(“分钟”,“HH:mm”);
dateAxis.periodChangeDateFormats.setKey(“小时”、“dt”);
dateAxis.periodChangeDateFormats.setKey(“日”,“毫米dt”);
dateAxis.periodChangeDateFormats.setKey(“月”、“毫米”);
dateAxis.baseInterval={
“时间单位”:“秒”,
“计数”:30
};
var valueAxis=chart.yAxes.push(新的am4charts.valueAxis());
//创建系列
var series=chart.series.push(新的am4charts.LineSeries());
series.dataFields.valueY=“温度”;
series.dataFields.dateX=“atDate”;
series.tooltipText=“{dateX.formatDate('yyyy-MM-dd HH:MM:ss')}\n{temperature}”
series.tooltip.pointerooritation=“垂直”;
chart.cursor=新的am4charts.XYCursor();
chart.cursor.snapToSeries=系列;
chart.cursor.xAxis=日期轴;
//chart.scrollbarY=新的am4core.Scrollbar();
chart.scrollbarX=新的am4core.Scrollbar();
});
如何设置标准/默认时区,以解释传入数据。我真的不想把时区信息编码到我的
这样的数据会增加数据库的存储需求。

您可以使用设置。@martynasma在我添加
chart.dateFormatter.timezoneOffset(120)时破坏了代码图表.dateFormatter.timezoneOffset=120