Javascript 在本例中,控制x轴值的是什么?

Javascript 在本例中,控制x轴值的是什么?,javascript,jquery,highcharts,Javascript,Jquery,Highcharts,在此图表中: 是什么导致x轴值以年为单位出现,每点增加+10 我可以看到point start设置为1940,xAxis配置为返回该值。但是似乎有一些隐式功能在计算每年的值 如何更改以显示一年中12个月的时间范围而不是1940-2000? 小提琴代码: <script src="http://code.highcharts.com/highcharts.js"></script> <script src="http://code.highcharts.com/mod

在此图表中:

是什么导致x轴值以年为单位出现,每点增加+10

我可以看到point start设置为1940,xAxis配置为返回该值。但是似乎有一些隐式功能在计算每年的值

如何更改以显示一年中12个月的时间范围而不是1940-2000? 小提琴代码:

<script src="http://code.highcharts.com/highcharts.js"></script>
<script src="http://code.highcharts.com/modules/exporting.js"></script>

<div id="container" style="min-width: 310px; height: 400px; margin: 0 auto"></div>


$(function () {
    $('#container').highcharts({
        chart: {
            type: 'area'
        },
        title: {
            text: 'US and USSR nuclear stockpiles'
        },
        subtitle: {
            text: 'Source: <a href="http://thebulletin.metapress.com/content/c4120650912x74k7/fulltext.pdf">' +
                'thebulletin.metapress.com</a>'
        },
        xAxis: {
            allowDecimals: false,
            labels: {
                formatter: function () {
                    return this.value; // clean, unformatted number for year
                }
            }
        },
        yAxis: {
            title: {
                text: 'Nuclear weapon states'
            },
            labels: {
                formatter: function () {
                    return this.value / 1000 + 'k';
                }
            }
        },
        tooltip: {
            pointFormat: '{series.name} produced <b>{point.y:,.0f}</b><br/>warheads in {point.x}'
        },
        plotOptions: {
            area: {
                pointStart: 1940,
                marker: {
                    enabled: false,
                    symbol: 'circle',
                    radius: 2,
                    states: {
                        hover: {
                            enabled: true
                        }
                    }
                }
            }
        },
        series: [{
            name: 'USA',
            data: [null, null, null, null, null, 6, 11, 32, 110, 235, 369, 640,
                1005, 1436, 2063, 3057, 4618, 6444, 9822, 15468, 20434, 24126,
                27387, 29459, 31056, 31982, 32040, 31233, 29224, 27342, 26662,
                26956, 27912, 28999, 28965, 27826, 25579, 25722, 24826, 24605,
                24304, 23464, 23708, 24099, 24357, 24237, 24401, 24344, 23586,
                22380, 21004, 17287, 14747, 13076, 12555, 12144, 11009, 10950,
                10871, 10824, 10577, 10527, 10475, 10421, 10358, 10295, 10104]
        }, {
            name: 'USSR/Russia',
            data: [null, null, null, null, null, null, null, null, null, null,
                5, 25, 50, 120, 150, 200, 426, 660, 869, 1060, 1605, 2471, 3322,
                4238, 5221, 6129, 7089, 8339, 9399, 10538, 11643, 13092, 14478,
                15915, 17385, 19055, 21205, 23044, 25393, 27935, 30062, 32049,
                33952, 35804, 37431, 39197, 45000, 43000, 41000, 39000, 37000,
                35000, 33000, 31000, 29000, 27000, 25000, 24000, 23000, 22000,
                21000, 20000, 19000, 18000, 18000, 17000, 16000]
        }]
    });
});

$(函数(){
$(“#容器”)。高图({
图表:{
类型:“区域”
},
标题:{
正文:“美国和苏联的核储备”
},
副标题:{
文本:“来源:”
},
xAxis:{
allowDecimals:false,
标签:{
格式化程序:函数(){
返回this.value;//年份的干净、未格式化的数字
}
}
},
亚克斯:{
标题:{
案文:“核武器国家”
},
标签:{
格式化程序:函数(){
返回此值/1000+'k';
}
}
},
工具提示:{
pointFormat:“{series.name}在{point.x}中生成{point.y:,.0f}
弹头” }, 打印选项:{ 面积:{ 起点:1940年, 标记:{ 启用:false, 符号:'圆', 半径:2, 国家:{ 悬停:{ 已启用:true } } } } }, 系列:[{ 名称:'美国', 数据:[null,null,null,null,null,6,11,32,110,235,369,640, 1005, 1436, 2063, 3057, 4618, 6444, 9822, 15468, 20434, 24126, 27387, 29459, 31056, 31982, 32040, 31233, 29224, 27342, 26662, 26956, 27912, 28999, 28965, 27826, 25579, 25722, 24826, 24605, 24304, 23464, 23708, 24099, 24357, 24237, 24401, 24344, 23586, 22380, 21004, 17287, 14747, 13076, 12555, 12144, 11009, 10950, 10871, 10824, 10577, 10527, 10475, 10421, 10358, 10295, 10104] }, { 名称:“苏联/俄罗斯”, 数据:[null,null,null,null,null,null,null,null,null,null,null,null, 5, 25, 50, 120, 150, 200, 426, 660, 869, 1060, 1605, 2471, 3322, 4238, 5221, 6129, 7089, 8339, 9399, 10538, 11643, 13092, 14478, 15915, 17385, 19055, 21205, 23044, 25393, 27935, 30062, 32049, 33952, 35804, 37431, 39197, 45000, 43000, 41000, 39000, 37000, 35000, 33000, 31000, 29000, 27000, 25000, 24000, 23000, 22000, 21000, 20000, 19000, 18000, 18000, 17000, 16000] }] }); });

更新:如何向图表显式提供x值

我做了以下更改:

$(function () {
    $('#container').highcharts({
        chart: {
            type: 'area'
        },
        title: {
            text: 'US and USSR nuclear stockpiles'
        },
        subtitle: {
            text: 'Source: <a href="http://thebulletin.metapress.com/content/c4120650912x74k7/fulltext.pdf">' +
                'thebulletin.metapress.com</a>'
        },
        xAxis: {
            allowDecimals: false,
            type: 'datetime',

            tickInterval: 3600 * 1000*24*30,

        },
        yAxis: {
            title: {
                text: 'Nuclear weapon states'
            },
            labels: {
                formatter: function () {
                    return this.value / 1000 + 'k';
                }
            }
        },
        tooltip: {
            shared:true,
        },
        plotOptions: {
            area: {

                marker: {
                    enabled: false,
                    symbol: 'circle',
                    radius: 2,
                    states: {
                        hover: {
                            enabled: true
                        }
                    }
                }
            }
        },
        series: [{
            name: 'USA',
            pointInterval: 3600 * 1000*24*30,
            pointStart: Date.UTC(1940, 0, 01, 0, 0, 0, 0),
            data: [null, null, null, null, null, 6, 11, 32, 110, 235, 369, 640,
                1005, 1436, 2063, 3057, 4618, 6444, 9822, 15468, 20434, 24126,
                27387, 29459, 31056, 31982, 32040, 31233, 29224, 27342, 26662,
                26956, 27912, 28999, 28965, 27826, 25579, 25722, 24826, 24605,
                24304, 23464, 23708, 24099, 24357, 24237, 24401, 24344, 23586,
                22380, 21004, 17287, 14747, 13076, 12555, 12144, 11009, 10950,
                10871, 10824, 10577, 10527, 10475, 10421, 10358, 10295, 10104]
        }, {
            name: 'USSR/Russia',
            pointInterval: 3600 * 1000*24*30,
            pointStart: Date.UTC(1940, 0, 01, 0, 0, 0, 0),
            data: [null, null, null, null, null, null, null, null, null, null,
                5, 25, 50, 120, 150, 200, 426, 660, 869, 1060, 1605, 2471, 3322,
                4238, 5221, 6129, 7089, 8339, 9399, 10538, 11643, 13092, 14478,
                15915, 17385, 19055, 21205, 23044, 25393, 27935, 30062, 32049,
                33952, 35804, 37431, 39197, 45000, 43000, 41000, 39000, 37000,
                35000, 33000, 31000, 29000, 27000, 25000, 24000, 23000, 22000,
                21000, 20000, 19000, 18000, 18000, 17000, 16000]
        }]
    });
});
$(函数(){
$(“#容器”)。高图({
图表:{
类型:“区域”
},
标题:{
正文:“美国和苏联的核储备”
},
副标题:{
文本:“来源:”
},
xAxis:{
allowDecimals:false,
键入:“日期时间”,
滴答声间隔:3600*1000*24*30,
},
亚克斯:{
标题:{
案文:“核武器国家”
},
标签:{
格式化程序:函数(){
返回此值/1000+'k';
}
}
},
工具提示:{
分享:是的,
},
打印选项:{
面积:{
标记:{
启用:false,
符号:'圆',
半径:2,
国家:{
悬停:{
已启用:true
}
}
}
}
},
系列:[{
名称:'美国',
点间距:3600*1000*24*30,
pointStart:Date.UTC(1940,0,01,0,0,0,0),
数据:[null,null,null,null,null,6,11,32,110,235,369,640,
1005, 1436, 2063, 3057, 4618, 6444, 9822, 15468, 20434, 24126,
27387, 29459, 31056, 31982, 32040, 31233, 29224, 27342, 26662,
26956, 27912, 28999, 28965, 27826, 25579, 25722, 24826, 24605,
24304, 23464, 23708, 24099, 24357, 24237, 24401, 24344, 23586,
22380, 21004, 17287, 14747, 13076, 12555, 12144, 11009, 10950,
10871, 10824, 10577, 10527, 10475, 10421, 10358, 10295, 10104]
}, {
名称:“苏联/俄罗斯”,
点间距:3600*1000*24*30,
pointStart:Date.UTC(1940,0,01,0,0,0,0),
数据:[null,null,null,null,null,null,null,null,null,null,null,null,
5, 25, 50, 120, 150, 200, 426, 660, 869, 1060, 1605, 2471, 3322,
4238, 5221, 6129, 7089, 8339, 9399, 10538, 11643, 13092, 14478,
15915, 17385, 19055, 21205, 23044, 25393, 27935, 30062, 32049,
33952, 35804, 37431, 39197, 45000, 43000, 41000, 39000, 37000,
35000, 33000, 31000, 29000, 27000, 25000, 24000, 23000, 22000,
21000, 20000, 19000, 18000, 18000, 17000, 16000]
}]
});
});


希望它能起作用。

为了说明我评论中的问题:

1) 使用
datetime
x轴类型,并提供
pointStart
pointInterval

或显式提供x值:

(日期可以是Date.UTC对象[记住,javascript从0开始计算月数],也可以是纪元时间戳[以毫秒为单位]引用:|)

二,