Задать вопрос

Кастомизация осей в highcharts.js?

Доброго всем дня! Требуется построить график по макету. Выбрал плагин highcharts.js, который очень хорошо визуально помогает попасть в то, что на макете, но так и не могу найти правила для кастомизации осей. Если кто-то работал в подобном ключ - буду рад подсказке, документация молчил, либо я не вижу того, что перед глазами :(

5fbfa168bbc40662126667.png
  • Вопрос задан
  • 90 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
@zordq Автор вопроса
Вот конфиг, который мне удалось сформировать для получения такого результата, как выше на скриншоте. Максимально возможное соответствие.

Highcharts.chart('highcharts', {
    chart: {
        height: (9 / 16 * 100) + '%',
        type: 'areaspline',
        color: {
            linearGradient: {
                x1: 0,
                x2: 0,
                y1: 0,
                y2: 1
            },
            stops: [
                [0, 'rgba(23, 64, 255, 0.1)'],
                [1, 'rgba(23, 64, 255, 0']
            ]
        },
        style: {
            fontFamily: 'Roboto, sans-serif',
        },
        marker: {
            enabled: false
        },
        enableMouseTracking: false,
        legend: {
            enable: false
        },
        color: {
            linearGradient: {
                x1: 0,
                x2: 0,
                y1: 0,
                y2: 1
            },
            stops: [
                [0, 'rgba(23, 64, 255, 0.1)'],
                [1, 'rgba(23, 64, 255, 0']
            ]
        },
    },

    title: {
        text: null,
        align: 'left',
        style: {
            fontFamily: 'Roboto, sans-serif',
            fontSize: '16px',
            fontWeight: 'bold'
        }
    },
    tooltip: {
        enabled: false
    },
    credits: {
        enabled: false
    },
    yAxis: {
        min: 0,
        max: 100,
        title: false,
        tickInterval: 20,
        legend: {
            enabled: false
        },
        labels: {
            formatter() {
                return this.value + "%"
            }
        }
    },
    xAxis: {
        type: 'datetime',
        title: false,
        gridLineWidth: 1,
        showEmpty: true,
        legend: false,
        dateTimeLabelFormats: {
            day: {
                main: '%H %M'
            },
        },
        tickInterval: 7200 * 1000,
    },
    lineColor: '#1740FF',
    lineWidth: 3,
    plotOptions: {
        area: {
            fillColor: {
                linearGradient: {
                    x1: 0,
                    y1: 0,
                    x2: 0,
                    y2: 1
                },
                stops: [
                    [
                        0,
                        'rgba(23, 64, 255, 0.1)'
                    ],
                    [
                        1,
                        'rgba(23, 64, 255, 0)'
                    ]
                ]
            },
            lineColor: '#1740FF',
            lineWidth: 3,
            states: {
                hover: {
                    enabled: false
                }
            },
        }
    },
    series: [{
        lineColor: '#1740FF',
        lineWidth: 3,
        showInLegend: false,
        type: 'areaspline',
        marker: {
            enabled: false
        },
        enableMouseTracking: false,
        legend: {
            enable: false
        },
        color: {
            linearGradient: {
                x1: 0,
                x2: 0,
                y1: 0,
                y2: 1
            },
            stops: [
                [0, 'rgba(23, 64, 255, 0.1)'],
                [1, 'rgba(23, 64, 255, 0']
            ]
        },
        data: [
            [new Date('2017-01-03T00:00:00Z').getTime(), 20],
            [new Date('2017-01-03T02:00:00Z').getTime(), 50],
            [new Date('2017-01-03T02:30:00Z').getTime(), 80],
            [new Date('2017-01-03T02:35:00Z').getTime(), 70],
            [new Date('2017-01-03T03:35:00Z').getTime(), 60],
            [new Date('2017-01-03T03:36:00Z').getTime(), 20],
            [new Date('2017-01-03T04:34:00Z').getTime(), 50],
            [new Date('2017-01-03T04:55:00Z').getTime(), 80],
            [new Date('2017-01-03T05:35:00Z').getTime(), 70],
            [new Date('2017-01-03T05:55:00Z').getTime(), 60],
            [new Date('2017-01-03T06:00:00Z').getTime(), 20],
            [new Date('2017-01-03T06:56:00Z').getTime(), 50],
            [new Date('2017-01-03T07:30:00Z').getTime(), 80],
            [new Date('2017-01-03T07:45:00Z').getTime(), 70],
            [new Date('2017-01-03T08:35:00Z').getTime(), 60],
            [new Date('2017-01-03T09:36:00Z').getTime(), 20],
            [new Date('2017-01-03T10:34:00Z').getTime(), 50],
            [new Date('2017-01-03T11:55:00Z').getTime(), 80],
            [new Date('2017-01-03T12:35:00Z').getTime(), 70],
            [new Date('2017-01-03T14:55:00Z').getTime(), 60],
            [new Date('2017-01-03T16:55:00Z').getTime(), 60],
            [new Date('2017-01-03T18:55:00Z').getTime(), 60],
            [new Date('2017-01-03T20:00:00Z').getTime(), 60]
        ]
    }]

});
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы