Histogram Aggregation

More info about histogram aggregation is in the official elasticsearch docs

A multi-bucket values source based aggregation that can be applied on numeric values extracted from the documents. It dynamically builds fixed size (a.k.a. interval) buckets over the values.

Simple example

    "aggregations": {
        "prices": {
            "histogram": {
                "field": "price",
                "interval": 50

And now the query via DSL:

$histogramAggregation = new HistogramAggregation('prices', 'price', 50);

$search = new Search();

$queryArray = $search->toArray();