199

我正在使用 Chart.js v2 绘制一个简单的折线图。一切看起来都很好,除了有我不想要的网格线:

我不想要的网格线

折线图的文档在这里:https ://nnnick.github.io/Chart.js/docs-v2/#line-chart ,但我找不到任何关于隐藏这些“网格线”的信息。

如何删除网格线?

4

9 回答 9

441

我找到了一种可以在折线图中隐藏网格线的解决方案。

gridLines颜色设置为与 div 的背景颜色相同。

var options = {
    scales: {
        xAxes: [{
            gridLines: {
                color: "rgba(0, 0, 0, 0)",
            }
        }],
        yAxes: [{
            gridLines: {
                color: "rgba(0, 0, 0, 0)",
            }   
        }]
    }
}

或使用

var options = {
    scales: {
        xAxes: [{
            gridLines: {
                display:false
            }
        }],
        yAxes: [{
            gridLines: {
                display:false
            }   
        }]
    }
}
于 2016-04-18T11:22:37.390 回答
92
options: {
    scales: {
        xAxes: [{
            gridLines: {
                drawOnChartArea: false
            }
        }],
        yAxes: [{
            gridLines: {
                drawOnChartArea: false
            }
        }]
    }
}
于 2018-08-20T13:33:10.270 回答
65

从版本 3.x 开始,使用此语法。参考 chart.js 迁移指南:https ://www.chartjs.org/docs/latest/getting-started/v3-migration.html

scales: {
  x: {
    grid: {
      display: false
    }
  },
  y: {
    grid: {
      display: false
    }
  }
}
于 2021-06-09T22:15:40.407 回答
26

如果您希望它们默认消失,您可以设置:

Chart.defaults.scale.gridLines.display = false;
于 2018-06-08T22:19:03.923 回答
16

如果要隐藏网格线但要显示 yAxes,可以设置:

yAxes: [{...
         gridLines: {
                        drawBorder: true,
                        display: false
                    }
       }]
于 2019-02-01T04:00:32.190 回答
10

下面的代码仅从图表区域中删除网格线,而不是 x&y 轴标签中的网格线

Chart.defaults.scale.gridLines.drawOnChartArea = false;
于 2019-11-27T16:32:24.620 回答
10

好吧,没关系..我找到了诀窍:

    scales: {
      yAxes: [
        {
          gridLines: {
                lineWidth: 0
            }
        }
      ]
    }
于 2017-08-18T17:20:17.073 回答
6

在 chartjs 3 中访问此配置有一点不同。该属性的名称不是gridLines,而是grid,如官方文档中所示:

options.gridLines改名为options.grid

资料来源: https ://www.chartjs.org/docs/latest/getting-started/v3-migration.html#ticks

这是它的外观:

const options = {
  scales: {
    x: {
      grid: {
        display: false,
      },
    },
  },
};
于 2021-08-18T14:26:46.920 回答
3

请参考官方文档:

https://www.chartjs.org/docs/latest/axes/styling.html#grid-line-configuration

下面的代码更改将隐藏网格线:

        gridLines: {
            display:false
        }

在此处输入图像描述

于 2020-11-30T05:31:54.880 回答