Chart.js v2 - скрытие линий сетки


160

Я использую Chart.js v2, чтобы нарисовать простую линейную диаграмму. Все выглядит нормально, кроме линий сетки, которые мне не нужны:

Линии сетки мне не нужны

Документация для линейной диаграммы находится здесь: https://nnnick.github.io/Chart.js/docs-v2/#line-chart , но я не могу найти ничего о том, как скрыть эти «линии сетки».

Как удалить линии сетки?

Ответы:


364

Я нашел решение, которое позволяет скрыть линии сетки на линейной диаграмме.

Установите 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
            }   
        }]
    }
}

2
Фактически это устанавливает цвет gridLines на 0 opacityчерный (прозрачный цвет). Так что это должно работать независимо от цвета фона div.
XCS

41
Или используйте display: false вместо «color»
Ирвин

4
Большое спасибо! Если бы только документация была чуточку яснее по этому поводу. :)
iSS

1
Хотя этот первый ответ может дать желаемую картину, это своего рода взлом. Второе решение, которое фактически устанавливает для свойства display gridLines значение false, кажется более правильным.
Tot Zam

2
Это также удаляет линии оси x (одиночная линия) и оси y (одиночная линия). Но я хотел только удалить линии на графике. Итак, drawOnChartArea: false поступает правильно.
Раджешвар,

65
options: {
    scales: {
        xAxes: [{
            gridLines: {
                drawOnChartArea: false
            }
        }],
        yAxes: [{
            gridLines: {
                drawOnChartArea: false
            }
        }]
    }
}

6
Этот ответ позволил мне сохранить масштаб, но не рисовать линии сетки на диаграмме.
adg 03

21

Если вы хотите, чтобы они исчезли по умолчанию, вы можете установить:

Chart.defaults.scale.gridLines.display = false;

11

Если вы хотите скрыть линии сетки, но хотите показать оси y, вы можете установить:

yAxes: [{...
         gridLines: {
                        drawBorder: true,
                        display: false
                    }
       }]


6

В приведенном ниже коде удаляются линии сетки только из области диаграммы, а не из меток осей x и y.

Chart.defaults.scale.gridLines.drawOnChartArea = false;

1
Это правильный ответ, так как это ничего не меняет в зоне розыгрыша, Спасибо Ахмед
Рэнни
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.