在 JSON 代码中更改时间格式(对于 AmCharts)

Change time format within JSON code (for AmCharts)

我正在使用 AmCharts 制作图表。这是我的 stocklegend 部分。

"stockLegend": {
"valueTextRegular": "[[time]]:[[value]]"
}

(这里,时间是从 json 数据集中存在的时间戳转换而来的日期对象,该数据集加载在 javascript 对象中用作图表的数据提供者。"dataProvider": consChartData.Data 其中数据是一个数组数据点的持有价值和时间。)

使用 [[time]]:[[value]],我得到的是:

我想要的方式是:2017 年 12 月 23 日,5:21:00 IST:17,686.54。有什么办法可以按照我想要的方式格式化 [[time]] 吗?

编辑

这个问题没有被 How to format a JavaScript date 解决,因为如果我在这里使用它,它会像 "valueTextRegular":dateFormat("[[time]]") + "[[value]]",。我必须根据过去的时间创建一个新的 Date 对象,然后它显示:

"NaN undefined NaN 17,686.54"

在输出中。

您将需要使用 StockLegend 的 valueFunction 来格式化日期:

"valueFunction": function (panel, value) {

    var category = panel.category;

    if (category && category instanceof Date) {
        // Dec 23 2017, 5:21:00 IST: 17,686.54
        return [AmCharts.formatDate(category, "MMM D YYYY, H:N:SS"), " IST: ", panel.dataContext.value].join("");
    }

    return value;
}

请检查以下链接: