Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

largestTriangleThreeBuckets

largestTriangleThreeBuckets

Introduit dans : v23.10.0

Applique l’algorithme Largest-Triangle-Three-Buckets aux données d’entrée. Cet algorithme est utilisé pour le sous-échantillonnage de séries temporelles à des fins de visualisation. Il est conçu pour fonctionner sur des séries triées selon la coordonnée x. Il consiste à diviser la série triée en groupes, puis à trouver le plus grand triangle dans chaque groupe. Le nombre de groupes est égal au nombre de points dans la série résultante. La fonction trie les données par x, puis applique l’algorithme de sous-échantillonnage aux données triées.

Les NaN sont ignorés dans la série fournie, ce qui signifie que toutes les valeurs NaN sont exclues de l’analyse. Cela garantit que la fonction ne traite que des données numériques valides.

Syntaxe

largestTriangleThreeBuckets(n)(x, y)

Alias : lttb

Paramètres

  • n — Nombre de points dans la série résultante. UInt64

Arguments

Valeur renvoyée

Renvoie un tableau de tuples à deux éléments. Array(Tuple(Float64, Float64))

Exemples

Sous-échantillonnage de données de séries temporelles

CREATE TABLE largestTriangleThreeBuckets_test (x Float64, y Float64) ENGINE = Memory;
INSERT INTO largestTriangleThreeBuckets_test VALUES
    (1.0, 10.0), (2.0, 20.0), (3.0, 15.0), (8.0, 60.0), (9.0, 55.0),
    (10.0, 70.0), (4.0, 30.0), (5.0, 40.0), (6.0, 35.0), (7.0, 50.0);

SELECT largestTriangleThreeBuckets(4)(x, y) FROM largestTriangleThreeBuckets_test;
┌─largestTriangleThreeBuckets(4)(x, y)─┐
│ [(1,10),(3,15),(9,55),(10,70)]       │
└──────────────────────────────────────┘
Navigation