javascriptcsschart.jschartjs-2.6.0

How can I make small grid lines above ChartJS labels?


I am using Chart.js to draw a simple line chart. How can I make small grid lines on top of the xAxis labels?

The documentation for Line Chart is here: https://www.chartjs.org/docs/2.7.3/getting-started/?h=line, but I can't find anything about it.

I removed the XAxis and YAxis grid lines.

This is an example of the small grid lines wanted: ChartJS area

Thanks in advance.


Solution

  • Instead of removing the gridlines you can set the drawOnChartArea to false:

    var options = {
      type: 'line',
      data: {
        labels: ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"],
        datasets: [{
            label: '# of Votes',
            data: [12, 19, 3, 5, 2, 3],
            borderColor: 'pink'
          },
          {
            label: '# of Points',
            data: [7, 11, 5, 8, 3, 7],
            borderColor: 'orange'
          }
        ]
      },
      options: {
        scales: {
          x: {
            grid: {
              drawOnChartArea: false
            }
          },
          y: {
            grid: {
              drawOnChartArea: false
            }
          }
        }
      },
    }
    
    var ctx = document.getElementById('chartJSContainer').getContext('2d');
    new Chart(ctx, options);
    <body>
      <canvas id="chartJSContainer" width="600" height="400"></canvas>
      <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/3.6.2/chart.js"></script>
    </body>