внутридневной график Highstocks с отметкой времени и не десятичной осью Y - PullRequest
1 голос
/ 05 июля 2019

Иметь высокоуровневую диаграмму с большим количеством данных около 60-80 тысяч отметок времени и суммы. Проблема в том, что ни в одном из данных, которые я даю старшим товарным запасам, нет десятичных чисел, но старшие товарные запасы показывают некоторые значения, которые являются десятичными, например 1,5, но в моих данных нет никаких 1,5. Хайсток усредняет данные, если метка времени больше 1 часа или что-то еще? Если он усредняет данные, то как остановить это усреднение, поскольку мне не нужны десятичные данные

var chart = Highcharts.stockChart ('container', {

    chart: {
        height: 400
    },

    title: {
        text: 'Tweets Count'
    },


xAxis: {
     gapGridLineWidth: 0,
     events: {
     afterSetExtremes: function (e) {
     min=e.min
     max=e.max
     src="http://34.66.198.6/"+id+"/map/"+parseInt(min).toString()+"/"+parseInt(max).toString()+"/"
     loadIframe("map",src)
     src="http://34.66.198.6/"+id+"/hashtags/"+parseInt(min).toString()+"/"+parseInt(max).toString()+"/"
     loadIframe("hashtags",src)
     src="http://34.66.198.6/"+id+"/mentions_screen_name/"+parseInt(min).toString()+"/"+parseInt(max).toString()+"/"
     loadIframe("mentions_screen_name",src)
     src="http://34.66.198.6/"+id+"/screen_name/"+parseInt(min).toString()+"/"+parseInt(max).toString()+"/"
     loadIframe("screen_name",src)
     src="http://34.66.198.6/"+id+"/sentiments/"+parseInt(min).toString()+"/"+parseInt(max).toString()+"/"
     loadIframe("sentiments",src)
     src="http://34.66.198.6/"+id+"/sentiments/"+parseInt(min).toString()+"/"+parseInt(max).toString()+"/All/all"
     loadIframe("twitter",src)
     src="http://34.66.198.6/"+id+"/sentiments/"+parseInt(min).toString()+"/"+parseInt(max).toString()+"/All/all/word"
     loadIframe("word-cloud",src)
         }
     }
 },

yAxis:{
 text:'Tweets Count'
 }

, rangeSelector: { кнопки: [{ тип: «час», количество: 1, текст: «1Н» }, { тип: «день», количество: 1, текст: «1D» }, { тип: «месяц», количество: 1, текст: «1M» }, { тип: 'год', количество: 1, текст: «1Y» }, { тип: «все», количество: 1, текст: «Все» }], выбрано: 1, inputEnabled: false },

    series: [{
        name: 'Tweets Count',
        data: {{data}},
        type: 'area',
        gapSize: 5,
        tooltip: {
            valueDecimals: 2
        },
        fillColor: {
            linearGradient: {
                x1: 0,
                y1: 0,
                x2: 0,
                y2: 1
            },
            stops: [
                [0, Highcharts.getOptions().colors[0]],
                [1, Highcharts.Color(Highcharts.getOptions().colors[0]).setOpacity(0).get('rgba')]
            ]
        },
        threshold: null
    }], 

    responsive: {
        rules: [{
            condition: {
                maxWidth: 500
            },
            chartOptions: {
                chart: {
                    height: 300
                },
                subtitle: {
                    text: null
                },
                navigator: {
                    enabled: false
                }
            }
        }]
    }
});

1 Ответ

0 голосов
/ 05 июля 2019

Highstock предоставляет функцию dataGrouping, которая включена по умолчанию.

Пожалуйста, проверьте документы ниже и сравните результат с:

Вы можете отключить dataGrouping или определить собственную функцию approximation, которая будет округлять результат, например:

series: [{
    data: [...],
    dataGrouping: {
        approximation: function(arr) {
            var len = arr.length,
                ret = Highcharts.approximations.sum(arr);

            if (Highcharts.isNumber(ret) && len) {
                ret = ret / len;
            }

            return Math.round(ret);
        }
    }
}]

Демонстрация в реальном времени: http://jsfiddle.net/BlackLabel/q6ukvrp9/

Справочник по API: https://api.highcharts.com/highstock/series.line.dataGrouping.approximation

Документы: https://www.highcharts.com/docs/advanced-chart-features/data-grouping

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...