Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.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 c3时间序列图-如何使用没有初始Y值的X值_Javascript_C3.js - Fatal编程技术网

Javascript c3时间序列图-如何使用没有初始Y值的X值

Javascript c3时间序列图-如何使用没有初始Y值的X值,javascript,c3.js,Javascript,C3.js,我有一个例子,我希望在一天中每15分钟显示一次if,这样一天就占据了整个X轴,然后随着一天的进展和数据的输入显示数据 我有以下设置 var now = new Date().toISOString(); this.lineChart = generate({ bindto: '#line', transition: { duration: 1000 }, data: { x: 'x', xFormat: '

我有一个例子,我希望在一天中每15分钟显示一次if,这样一天就占据了整个X轴,然后随着一天的进展和数据的输入显示数据

我有以下设置

var now = new Date().toISOString();

  this.lineChart = generate({
    bindto: '#line',
    transition: {
      duration: 1000
    },        
    data: {
      x: 'x',
      xFormat: '%Y-%m-%dT%H:%M:%S.%LZ',
       columns: [
      ['x', now], 
      ['data1', 0]                   
    ]
    },
    axis: {
      x: {
        type: 'timeseries',
        localtime: true,
        tick: {
          format: '%H:%M %p',
          culling : true,
          rotate : 60
        }
      }
    }
  });
然后按如下方式加载日期

let shiftStart = new Date(startDateTime);
  let endTime = new Date(endDateTime);
  let nextDate = shiftStart;
  let dates = new Array<string>();
  dates.push(nextDate.toISOString());
  let data = [];
  while (nextDate <= endTime) {
    nextDate = moment(nextDate).add(30, 'm').toDate();
    dates.push(nextDate.toISOString());
    data.push(0); // to make them show up!
  }

  this.lineChart.load({
    columns: [
      ['x', ...dates],
      ['myData', ...data]          
    ]
  })
为了让它只显示时间的X轴,而不显示Y轴的值(还没有)

这可能吗


非常感谢您的帮助

事实证明,您可以使用NaN作为值来获得我想要的

现在只需计算出那些不均匀的刻度,以及截断的最后一个刻度值

while (nextDate <= endTime) {
    nextDate = moment(nextDate).add(30, 'm').toDate();
    dates.push(nextDate.toISOString());
  }

  this.lineChart.load({
    columns: [
      ['x', ...dates],
    ]
  })