Time 如何在时间笛卡尔图表中配置线性标签?

Time 如何在时间笛卡尔图表中配置线性标签?,time,label,chart.js,cartesian,Time,Label,Chart.js,Cartesian,我需要每隔2小时(0h、2h、4h…)在x轴上显示标签。我错过了什么 <script> var ctx = document.getElementById('myChart').getContext('2d'); var myChart = new Chart(ctx, { type: 'line', data: { //labels: ['0h', '2h', '4h', '6h', '8h', '10h', '12h', '14h', '16h',

我需要每隔2小时(0h、2h、4h…)在x轴上显示标签。我错过了什么

<script>
var ctx = document.getElementById('myChart').getContext('2d');
var myChart = new Chart(ctx, {
    type: 'line',
    data: {
        //labels: ['0h', '2h', '4h', '6h', '8h', '10h', '12h', '14h', '16h', '18h', '20h', '22h', '0h'],
        datasets: [{
            label: 'AAA1111',
            //xAxisID: 'Hora',
            //yAxisID: 'Velocidade',
            data: [{
              t: new Date("2015-3-15 12:30"),
              y: 12
            },
            {
              t: new Date("2015-3-15 14:40"),
              y: 45
            },
            {
              t: new Date("2015-3-15 17:50"),
              y: 77
            }
            ],
            borderColor: 'rgba(255, 0, 0, 1)',
            borderWidth: 4,
            fill: false,
            lineTension: 0,
            lineJoint: "round",
            spanGaps: true
        }]
    },
    options: {
        scales: {
            xAxes: [{
                type: 'time',
                distribution: 'linear',
                time: {
                    unit: 'hour',
                    //stepSize: 24??
                },
                ticks: {
                    source: 'data'
                }
            }]
        }
    }
});
</script>

var ctx=document.getElementById('myChart').getContext('2d');
var myChart=新图表(ctx{
键入:“行”,
数据:{
//标签:['0h','2h','4h','6h','8h','10h','12h','14h','16h','18h','20h','22h','0h'],
数据集:[{
标签:“AAA1111”,
//xAxisID:‘Hora’,
//yAxisID:“Velocidade”,
数据:[{
t:新日期(“2015-3-15 12:30”),
y:12
},
{
t:新日期(“2015-3-15 14:40”),
y:45
},
{
t:新日期(“2015-3-15 17:50”),
y:77
}
],
边框颜色:“rgba(255,0,0,1)”,
边框宽度:4,
填充:假,
线张力:0,
线条接缝:“圆形”,
斯潘:是的
}]
},
选项:{
比例:{
xAxes:[{
键入:“时间”,
分布:'线性',
时间:{
单位:小时,
//步长:24??
},
滴答声:{
资料来源:“数据”
}
}]
}
}
});

图表绘制了时间x速度。

两个小的变化将达到预期的结果:

  • stepSize:2
    设置为“每隔2小时(0h、2h、4h…)在X轴上显示标签”
  • 删除
    ticks:{source:'data'}
    as: 从数据(包括来自数据{t | x | y}对象的标签)生成记号)

下面是一个基于发布代码的工作示例:

var ctx=document.getElementById('myChart').getContext('2d');
var myChart=新图表(ctx{
键入:“行”,
数据:{
//标签:['0h','2h','4h','6h','8h','10h','12h','14h','16h','18h','20h','22h','0h'],
数据集:[{
标签:“AAA1111”,
//xAxisID:‘Hora’,
//yAxisID:“Velocidade”,
数据:[{
t:新日期(“2015-3-15 12:30”),
y:12
},
{
t:新日期(“2015-3-15 14:40”),
y:45
},
{
t:新日期(“2015-3-15 17:50”),
y:77
}
],
边框颜色:“rgba(255,0,0,1)”,
边框宽度:4,
填充:假,
线张力:0,
线条接缝:“圆形”,
斯潘:是的
}]
},
选项:{
比例:{
xAxes:[{
键入:“时间”,
分布:'线性',
时间:{
单位:小时,
步长:2
}
}]
}
}
});

两个小改动将达到预期效果:

  • stepSize:2
    设置为“每隔2小时(0h、2h、4h…)在X轴上显示标签”
  • 删除
    ticks:{source:'data'}
    as: 从数据(包括来自数据{t | x | y}对象的标签)生成记号)

下面是一个基于发布代码的工作示例:

var ctx=document.getElementById('myChart').getContext('2d');
var myChart=新图表(ctx{
键入:“行”,
数据:{
//标签:['0h','2h','4h','6h','8h','10h','12h','14h','16h','18h','20h','22h','0h'],
数据集:[{
标签:“AAA1111”,
//xAxisID:‘Hora’,
//yAxisID:“Velocidade”,
数据:[{
t:新日期(“2015-3-15 12:30”),
y:12
},
{
t:新日期(“2015-3-15 14:40”),
y:45
},
{
t:新日期(“2015-3-15 17:50”),
y:77
}
],
边框颜色:“rgba(255,0,0,1)”,
边框宽度:4,
填充:假,
线张力:0,
线条接缝:“圆形”,
斯潘:是的
}]
},
选项:{
比例:{
xAxes:[{
键入:“时间”,
分布:'线性',
时间:{
单位:小时,
步长:2
}
}]
}
}
});


@Rhts这回答了你的问题吗?@Rhts这回答了你的问题吗?