Chart.js #4661 test02

by Akihiko Kusanagi

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.js"></script>
<canvas id="myChart1"></canvas>
<canvas id="myChart2"></canvas>
<canvas id="myChart3"></canvas>

JavaScript

var ctx1 = document.getElementById('myChart1').getContext('2d');
var chart1 = new Chart(ctx1, {
  type: 'bar',
  data: {
    datasets: [{
      data: [
        {x: '2017-07-10', y: 1},
        {x: '2017-07-11', y: 2},
        {x: '2017-07-12', y: 3},
        {x: '2017-07-13', y: 4}
      ]
    }]
  },
  options: {
    title: {
      display: true,
      text: 'Point objects with time in String format'
    },
    scales: {
      xAxes: [{
        type: 'time',
        time: {
          unit: 'day'
        },
        offset: true
      }],
      yAxes: [{
        ticks: {
          beginAtZero: true
        }
      }]
    }
  }
});
var ctx2 = document.getElementById('myChart2').getContext('2d');
var chart2 = new Chart(ctx2, {
  type: 'bar',
  data: {
    datasets: [{
      data: [
        {t: moment('2017-07-10').valueOf(), y: 1},
        {t: moment('2017-07-11').valueOf(), y: 2},
        {t: moment('2017-07-12').valueOf(), y: 3},
        {t: moment('2017-07-13').valueOf(), y: 4}
      ]
    }]
  },
  options: {
    title: {
      display: true,
      text: 'Point objects with time in Number format'
    },
    scales: {
      xAxes: [{
        type: 'time',
        time: {
          unit: 'day'
        },
        offset: true
      }],
      yAxes: [{
        ticks: {
          beginAtZero: true
        }
      }]
    }
  }
});
var ctx3 = document.getElementById('myChart3').getContext('2d');
var chart3 = new Chart(ctx3, {
  type: 'bar',
  data: {
    labels: ['2017_07_10', '2017-07-11', '2017-07-12', '2017-07-13'],
    datasets: [{
      data: [1, 2, 3, 4]
    }]
  },
  options: {
    title: {
      display: true,
      text: 'Data point has a wrong time format'
    },
    scales: {
      xAxes: [{
        type: 'time',
        time: {
          minUnit: 'day'
        },
        offset: true
      }],
      yAxes: [{
        ticks: {
          beginAtZero: true
        }
      }]
    }
  }
});