如何使用 chartkick (chart.js) 仅显示 x 轴(在 y = 0 处)?

How to just show x-axis (at y = 0) using chartkick (chart.js)?

我只想在我的条形图上显示 y = 0 处的 x 轴,即下面显示的绿线。

什么图表。js/chartkick 我应该使用什么配置来实现这个?还是我必须直接绘制它?如果是这样,我该如何实现?

目前,我有以下 chart.js 配置,它删除了所有行,包括所需的 x 轴。

library: {
    scales: {
        yAxes: [{
            ticks: {
                display: false,
            },
            gridLines: {
                display: false,
            }
        }],
        xAxes: [{
            ticks: {
                display: false,
            },
            gridLines: {
                display: false
            }
        }],
    },
}
                                
                            

假设您使用的是 Chart.js 版本 2.9.4,这可以通过如下定义 yAxis.gridLines 来完成:

gridLines: {
  lineWidth: 0,
  zeroLineWidth: 3,
  zeroLineColor: 'rgb(101, 157, 52)',
  z: 10
}

For further details about individual grid line options, please consult Chart.js v2.9 documentation.

请查看下面的可运行代码,看看它是如何工作的。

new Chart('chart', {
  type: 'bar',
  data: {
    labels: ['A', 'B', 'C'],
    datasets: [{
      label: 'My Dataset',
      data: [50, -15, 30],
      backgroundColor: 'rgba(0, 0, 255, 0.2)',
      borderColor: 'rgb(0, 0, 255)',
      borderWidth: 2
    }]
  },
  options: {
    legend: {
      display: false
    },
    scales: {
      yAxes: [{
        ticks: {
          display: false
        },
        gridLines: {
          lineWidth: 0,
          zeroLineWidth: 3,
          zeroLineColor: 'rgb(101, 157, 52)',
          z: 10
        }
      }],
      xAxes: [{
        ticks: {
          display: false
        },
        gridLines: {
          display: false
        }
      }]
    }
  }
});
canvas {
  max-width: 400px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.9.4/Chart.min.js"></script>
<canvas id="chart" height="120"></canvas>