3

tl ; dr :当我将xAxis最小值和最大值设置为,比如说2013-01-01 14:30:00和或任何自动生成的错误时间戳,例如这里2013-01-01 15:45


我有一个关于 Kendo Dataviz Chart 的问题。我试图在一张图表中显示几个散点线图,描述一些技术指标如何随时间变化。为此,我需要以分钟为单位显示正确的日期和时间。而我似乎无法达到这个看似简单的目标,无论我如何搜索或尝试。

到目前为止所做的研究: Telerik 的
回答几乎没有帮助。

所有示例和演示都最多使用天粒度,因此没有帮助。

这是一些示例代码,我没有设法利用:jsbin.com/AtusAGO/1/edit

代码:请尝试在JSFiddle
中 注释和取消注释第 23 到 27 行,看看会发生什么(实际上几乎没有,而且从来没有我想要实现的)。

(function () {
    $("#chart").kendoChart({
        legend: {
            visible: true,
            position: "bottom"
        },
        seriesDefaults: {
            type: "scatterLine",
            markers: {
                size: 0
            }
        },
        xAxis: {
            "type": "date",
            labels: {
                format: "hh:mm d. M. yyyy"
            },
            title: {
                text: "Time"
            },
            min: "2012-02-05 00:35:00",
            max: "2012-02-05 01:40:00",
            baseUnitStep: "auto",
            /*baseUnit: "fit",
                            maxDateGroups: 10,*/
            autoBaseUnitSteps: {
                minutes: [5]
            }
        },
        series: [{
            "name": "temp",
                "yAxis": "temperature",
                "data": [
                [
                    "2012-02-05T00:35:00",
                3],
                [
                    "2012-02-05T00:55:00",
                0],
                [
                    "2012-02-05T01:00:00",
                1],
                [
                    "2012-02-05T01:05:00",
                2],
                [
                    "2012-02-05T01:10:00",
                3],
                [
                    "2012-02-05T01:15:00",
                4],
                [
                    "2012-02-05T01:20:00",
                5],
                [
                    "2012-02-05T01:40:00",
                3]
            ]
        }, {
            "name": "hum",
                "yAxis": "humidity",
                "data": [
                [
                    "2012-02-05T00:00:00",
                80],
                [
                    "2012-02-05T00:55:00",
                100],
                [
                    "2012-02-05T01:00:00",
                10],
                [
                    "2012-02-05T01:05:00",
                20],
                [
                    "2012-02-05T01:10:00",
                50],
                [
                    "2012-02-05T01:15:00",
                40],
                [
                    "2012-02-05T01:20:00",
                50],
                [
                    "2012-02-05T01:51:00",
                30]
            ]
        }],
        yAxes: [{
            "name": "humidity",
                "title": {
                "text": "Humidity [%]"
            }
        }, {
            "name": "temperature",
                "title": {
                "text": "Temperature [\u00b0C]"
            }
        }]
    });
}());
4

1 回答 1

4

您可以使用以下数据格式:

series:{
data: [
    {
        date: new Date(2013,0,1,0,0,0),
        value: 23
    },
    {
        date: new Date(2013,0,2,0,0,0),
        value: 24
    }
],
field: "value",
categoryField: "date"
}

在标签中,您可以将其设置为

template: "#:kendo.toString(value,'dd/MM/yyyy hh:mm:ss')"
于 2014-01-02T10:56:53.893 回答