使用amCharts解析日期问题

时间:2017-11-25 03:49:08

标签: amcharts

我正在尝试创建基于日期的数据序列类型图表,强烈基于amChart网站上提供的示例"Date Based Data"。除了我替换dataProvider变量名和日期格式之外,代码几乎相同。 问题是它抛出了jQuery错误:

Uncaught TypeError: Cannot read property 'replace' of undefined
    at Object.d.formatDate (amcharts.js:397)
    at b.dispatchTimeZoomEvent (serial.js:45)
    at b.timeZoom (serial.js:36)
    at b.zoom (serial.js:34)
    at b.drawChart (serial.js:31)
    at b.onDataUpdated (serial.js:25)
    at b.initChart (serial.js:25)
    at b.measureMargins (serial.js:7)
    at b.onDataUpdated (serial.js:26)
    at b.initChart (serial.js:25)

所以它没有渲染图表。

我可能做错了什么?这里是代码的小提琴:https://jsfiddle.net/qtzmq9z7/

var chartData = [{"regtime": "2016-12-06T09:16:17Z", "power": -0.4},
                 ...
                 {"regtime": "2016-12-06T13:28:43Z", "power": -0.4}];

var chart1 = AmCharts.makeChart("general-chart", {
                ...
                "dataDateFormat": "YYYY-MM-DDTHH:NN:SSZ",
                "categoryField": "regtime",
                "categoryAxis": {
                    "parseDates": true,
                    "dashLength": 1,
                    "minorGridEnabled": true,
                    "minPeriod": "SS"
                },
                ...
               });
PS:看起来jsfiddle和amCharts有一些奇怪的错误,导致图形无限增加其高度,但这不会发生在jsfiddle之外,所以只是忽略这个问题。

1 个答案:

答案 0 :(得分:1)

minPeriod使用“ss”秒。请注意,它必须是低级的。

"categoryAxis": {
    "parseDates": true,
    "dashLength": 1,
    "minorGridEnabled": true,
    "minPeriod": "ss"
}

请查看更新后的示例https://jsfiddle.net/qtzmq9z7/1/