sparkbar
Добавленный в: v21.11.0
Функция строит частотную гистограмму для значений x и частоты их повторения y на интервале [min_x, max_x].
Частоты повторения для всех x, попадающих в один и тот же бакет, усредняются, поэтому данные должны быть предварительно агрегированы.
Отрицательные значения частоты повторения игнорируются.
Если интервал не указан, в качестве его начала используется минимальное значение x, а в качестве конца — максимальное значение x.
В противном случае значения вне интервала игнорируются.
Синтаксис
sparkbar(buckets[, min_x, max_x])(x, y)Псевдонимы: sparkBar
Параметры
buckets— Количество сегментов.(U)Int*min_x— Необязательно. Начало интервала.(U)Int*илиFloat*илиDecimalmax_x— Необязательно. Конец интервала.(U)Int*илиFloat*илиDecimal
Аргументы
x— Поле со значениями.const Stringy— Поле с частотами значений.const String
Возвращаемое значение
Возвращает частотную гистограмму. String
Примеры
Без указания интервала
CREATE TABLE spark_bar_data (`value` Int64, `event_date` Date) ENGINE = MergeTree ORDER BY event_date;
INSERT INTO spark_bar_data VALUES (1,'2020-01-01'), (3,'2020-01-02'), (4,'2020-01-02'), (-3,'2020-01-02'), (5,'2020-01-03'), (2,'2020-01-04'), (3,'2020-01-05'), (7,'2020-01-06'), (6,'2020-01-07'), (8,'2020-01-08'), (2,'2020-01-11');
SELECT sparkbar(9)(event_date, cnt) FROM (SELECT sum(value) AS cnt, event_date FROM spark_bar_data GROUP BY event_date);┌─sparkbar(9)(event_date, cnt)─┐
│ ▂▅▂▃▆█ ▂ │
└──────────────────────────────┘Со спецификацией INTERVAL
SELECT sparkbar(9, toDate('2020-01-01'), toDate('2020-01-10'))(event_date, cnt) FROM (SELECT sum(value) AS cnt, event_date FROM spark_bar_data GROUP BY event_date);┌─sparkbar(9, toDate('2020-01-01'), toDate('2020-01-10'))(event_date, cnt)─┐
│ ▂▅▂▃▇▆█ │
└──────────────────────────────────────────────────────────────────────────┘