起始x轴最小值

问题描述 投票:0回答:1

我正在尝试从最小值开始设置绘制列数据的开始,但是无法弄清楚该如何做。也就是说,该轴以-43而不是0开头(请参见屏幕截图)。

what i have

我想得到这样的东西:

what i want

  chart: {
    renderTo: 'container',
    backgroundColor: 'transparent'
  },
  tooltip: {
    formatter() {
      return `${moment(this.x).format('MMM DD')}: ${this.y.toFixed(2)}`;

    }
  },
  plotOptions: {
    column: {
      pointStart: -50,
      dataLabels: {
        enabled: true,
        format: '{point.y:.2f}'
      }
    }
  },
  title: {
    text: ''
  },
  yAxis: {
    plotLines: [{
      zIndex: 1,
      color: '#5c5c5c',
      value: 0,
      width: 3,
    }],
    title: {
      text: ''
    }
  },
  xAxis: {
    gridLineWidth : 1,
    labels: {
      formatter() {
        return moment(this.value).format('MMM DD');
      }
    }
  },
  legend: {
    enabled: false
  },
  series: [{
    data: [...this.monthData.resultByDays.map(res => [res.date, res.result])],
    type: 'column'
  }]
highcharts
1个回答
0
投票

我认为,一种好方法是使用columnrange系列而不是基本列。在columnrange中,可以设置起点的范围。

演示:https://jsfiddle.net/BlackLabel/ur6qgnbz/

以及隐藏“ -60”数据标签的代码:

dataLabels: {
  enabled: true,
  formatter() {
    if(this.y === -60) {
        return false
    } else {
        return this.y
    }
  }
}

API:https://api.highcharts.com/highcharts/plotOptions.columnrange

© www.soinside.com 2019 - 2024. All rights reserved.