Chapter 27. Building Bar Charts
One of the exciting aspects of aggregations are how easily they are converted into charts and graphs. In this chapter, we are focusing on various analytics that we can wring out of our example dataset. We will also demonstrate the types of charts aggregations can power.
The histogram
bucket is particularly useful. Histograms are essentially
bar charts, and if you’ve ever built a report or analytics dashboard, you
undoubtedly had a few bar charts in it. The histogram works by specifying an interval. If we were histogramming sale
prices, you might specify an interval of 20,000. This would create a new bucket
every $20,000. Documents are then sorted into buckets.
For our dashboard, we want to know how many cars sold in each price range. We would also like to know the total revenue generated by that price bracket. This is calculated by summing the price of each car sold in that interval.
To do this, we use a histogram
and a nested sum
metric:
GET
/
cars
/
transactions
/
_search
?
search_type
=
count
{
"aggs"
:
{
"price"
:
{
"histogram"
:
{
"field"
:
"price"
,
"interval"
:
20000
},
"aggs"
:
{
"revenue"
:
{
"sum"
:
{
"field"
:
"price"
}
}
}
}
}
}
Get Elasticsearch: The Definitive Guide now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.