2017-06-28 5 views
0

J'ai un index avec Elasticsearch qui contient (entre autres) les champs d'année et de poids. Dans Kibana (v5), je peux facilement produire un graphique à barres présentant la somme de tous les poids pour chaque année: enter image description hereGraphique avec changement de pourcentage entre les périodes dans Kibana

Comment puis-je construire un graphique à barres, qui présentera la façon dont le poids total a changé depuis l'année précédente? Donc, la formule (en méta-langage) sera comme: sum(weight[year])/sum(weight[year-1]). Il y a pipeline aggregations dans Elastic, mais je ne trouve pas de moyen de calculer le pourcentage de changement du godet par rapport au godet?

Répondre

0

J'ai réussi à atteindre cet objectif en utilisant Timelion, qui est récemment devenu un module natif de Kibana. Timelion permet d'effectuer des opérations mathématiques entre les séries, y compris le décalage de réglage sur l'axe des temps (x).

Pour calculer la fraction entre des seaux, j'ai utilisé la formule suivante:

.es(index=myindex,timefield=year_date,metric=sum:weight).divide(.es(index=myindex,timefield=year_date,metric=sum:weight,offset=-1y)).multiply(100).subtract(100).bars() 

La partie cruciale est ici pour .divide série par les mêmes données avec .offset(-1y).