Amchart:不同时区的图表例如浏览器时区= America / Toronto,图表目标时区= America / Chicago

问题描述

我的浏览器时区为America / Toronto,我想绘制的图表为America / Chicago 我尝试了两种选择,但都不是完美的解决方

选项1

通过使用intlJ库,我可以将dateAxis标签转换为目标时区

例如。

chart.dateFormatter.dateFormat = {
"year": "numeric","month": "numeric","day": "numeric","hour": "numeric","minute": "numeric","timeZone": "America/chicago "
};

解决方案日期轴显示非本地时区(目标时区)的正确日期时间,但是如果目标时区有时差,我会得到

xAxis label 11:00 -----5:00------11:00

代替

xAxis label 12:00 -----6:00------12:00

因为多伦多凌晨12点=芝加哥上午11点,而且看上去不太好

检查:https://stackblitz.com/edit/angular-ivy-gam8w7-nga-graph-hcrch9

选项2

如果我使用偏移设置

chart.dateFormatter.utc = false;
chart.dateFormatter.inputDateFormat = "i";
dateAxis.timezoneOffset = 360; (offset can not be static for all timezone)

我可以正确绘制美洲/芝加哥图表。 (仅当UTC-6 offset = 360时才从NOV到FEB),否则对于从marcH到OCT的情况,我必须将偏移量更改为300。因为日光节约了偏移量

什么可以解决两个问题?

解决方法

我们也遇到了同样的问题,而amchart在下一版本中对此提供了支持 这是amchart团队的回应:

好消息,我们决定为DateAxis实施时区设置,以解决您遇到的问题。

我们将在下周的某个时候发布新版本。

我会在可用时通知您。

感谢您加入。

您真诚的

Martynas Majeris 图表