Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/452.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript flot-axis标签-monthNames订购错误?_Javascript_Jquery_Charts_Flot - Fatal编程技术网

Javascript flot-axis标签-monthNames订购错误?

Javascript flot-axis标签-monthNames订购错误?,javascript,jquery,charts,flot,Javascript,Jquery,Charts,Flot,在Flot中,当数据跨越年底时,xaxis.monthNames的行为是否有些奇怪 我有12个月的数据,从2012年6月开始,我准备了一个包含12个字符串的数组来反映这些月份 当图形呈现时,数据显示正确,但日期标签不正确-它们可能是按日期顺序排列的,而不是它们在数组中的顺序(或者这可能是巧合) 值和标签图如下所示: var data1 = [ {label: "Incidents", data: arrFakeData, points: {symbol: "circle", fillCo

在Flot中,当数据跨越年底时,xaxis.monthNames的行为是否有些奇怪

我有12个月的数据,从2012年6月开始,我准备了一个包含12个字符串的数组来反映这些月份

当图形呈现时,数据显示正确,但日期标签不正确-它们可能是按日期顺序排列的,而不是它们在数组中的顺序(或者这可能是巧合)

值和标签图如下所示:

var data1 = [
    {label: "Incidents", data: arrFakeData, points: {symbol: "circle", fillColor: "#058DC7"}, color: '#058DC7'},
];

p = $.plot($("#placeholder"), data1, {
    xaxis: {
        min: (new Date(2012, 6, 1)).getTime(),
        max: (new Date(2013, 5, 1)).getTime(),
        mode: "time",
        tickSize: [1, "month"],
        monthNames: arrMonthLabels,
        tickLength: 0,
        axisLabel: 'Month',
        axisLabelUseCanvas: true,
        axisLabelFontSizePixels: 12,
        axisLabelFontFamily: 'Verdana, Arial, Helvetica, Tahoma, sans-serif',
        axisLabelPadding: 5
    },
    yaxis: {
        axisLabel: 'Number of Incidents',
        axisLabelUseCanvas: true,
        axisLabelFontSizePixels: 12,
        axisLabelFontFamily: 'Verdana, Arial, Helvetica, Tahoma, sans-serif',
        axisLabelPadding: 5
    },
    series: {
        lines: {show: true},
        points: {
            radius: 3,
            show: true,
            fill: true
        },
    },
    grid: {
        hoverable: true,
        borderWidth: 1
    },
    legend: {
        labelBoxBorderColor: "none",
        position: "right"
    }
});

结果图如下所示:

var data1 = [
    {label: "Incidents", data: arrFakeData, points: {symbol: "circle", fillColor: "#058DC7"}, color: '#058DC7'},
];

p = $.plot($("#placeholder"), data1, {
    xaxis: {
        min: (new Date(2012, 6, 1)).getTime(),
        max: (new Date(2013, 5, 1)).getTime(),
        mode: "time",
        tickSize: [1, "month"],
        monthNames: arrMonthLabels,
        tickLength: 0,
        axisLabel: 'Month',
        axisLabelUseCanvas: true,
        axisLabelFontSizePixels: 12,
        axisLabelFontFamily: 'Verdana, Arial, Helvetica, Tahoma, sans-serif',
        axisLabelPadding: 5
    },
    yaxis: {
        axisLabel: 'Number of Incidents',
        axisLabelUseCanvas: true,
        axisLabelFontSizePixels: 12,
        axisLabelFontFamily: 'Verdana, Arial, Helvetica, Tahoma, sans-serif',
        axisLabelPadding: 5
    },
    series: {
        lines: {show: true},
        points: {
            radius: 3,
            show: true,
            fill: true
        },
    },
    grid: {
        hoverable: true,
        borderWidth: 1
    },
    legend: {
        labelBoxBorderColor: "none",
        position: "right"
    }
});

最后。。。使用该数据的js*如下所示:

var data1 = [
    {label: "Incidents", data: arrFakeData, points: {symbol: "circle", fillColor: "#058DC7"}, color: '#058DC7'},
];

p = $.plot($("#placeholder"), data1, {
    xaxis: {
        min: (new Date(2012, 6, 1)).getTime(),
        max: (new Date(2013, 5, 1)).getTime(),
        mode: "time",
        tickSize: [1, "month"],
        monthNames: arrMonthLabels,
        tickLength: 0,
        axisLabel: 'Month',
        axisLabelUseCanvas: true,
        axisLabelFontSizePixels: 12,
        axisLabelFontFamily: 'Verdana, Arial, Helvetica, Tahoma, sans-serif',
        axisLabelPadding: 5
    },
    yaxis: {
        axisLabel: 'Number of Incidents',
        axisLabelUseCanvas: true,
        axisLabelFontSizePixels: 12,
        axisLabelFontFamily: 'Verdana, Arial, Helvetica, Tahoma, sans-serif',
        axisLabelPadding: 5
    },
    series: {
        lines: {show: true},
        points: {
            radius: 3,
            show: true,
            fill: true
        },
    },
    grid: {
        hoverable: true,
        borderWidth: 1
    },
    legend: {
        labelBoxBorderColor: "none",
        position: "right"
    }
});
当日期跨越一个日历年时,我是否应该采取其他措施来获得x轴标签的正确顺序


  • js是从有用的博客文章中借来并稍加修改的:

monthNames数组的大小或顺序不应与您的数据对应;它应该包含从1月到12月的12个月的名称。然后,时间插件为特定日期选择正确的时间

您的绘图不正确,因为1341057600000(实际上是7月,而不是6月)导致它选择monthNames数组中的第7项,您提供的是“Jan”而不是“Jul”


您只需重新安排您的月份,从1月到12月。

非常感谢您-我已仔细整理了标签以匹配数据!现在一切都好了。