IMPORTANT: No additional bug fixes or documentation updates
will be released for this version. For the latest information, see the
current release documentation.
Adjacency Matrix Usage
edit
IMPORTANT: This documentation is no longer updated. Refer to Elastic's version policy and the latest documentation.
Adjacency Matrix Usage
editFluent DSL example
edita => a
.AdjacencyMatrix("interactions", am => am
.Filters(fs => fs
.Filter("grpA", f => f.Term(p => p.State, StateOfBeing.BellyUp))
.Filter("grpB", f => f.Term(p => p.State, StateOfBeing.Stable))
.Filter("grpC", f => f.Term(p => p.State, StateOfBeing.VeryActive))
)
)
Object Initializer syntax example
editnew AdjacencyMatrixAggregation("interactions")
{
Filters = new NamedFiltersContainer
{
{ "grpA", new TermQuery { Field = "state", Value = StateOfBeing.BellyUp } },
{ "grpB", new TermQuery { Field = "state", Value = StateOfBeing.Stable } },
{ "grpC", new TermQuery { Field = "state", Value = StateOfBeing.VeryActive } },
}
}
Example json output.
{
"interactions": {
"adjacency_matrix": {
"filters": {
"grpA": {
"term": {
"state": {
"value": "BellyUp"
}
}
},
"grpB": {
"term": {
"state": {
"value": "Stable"
}
}
},
"grpC": {
"term": {
"state": {
"value": "VeryActive"
}
}
}
}
}
}
}
Handling Responses
editresponse.ShouldBeValid();
var interactions = response.Aggregations.AdjacencyMatrix("interactions");
interactions.Should().NotBeNull();
var buckets = interactions.Buckets;
buckets.Should().NotBeNullOrEmpty();
foreach (var bucket in buckets)
{
bucket.Key.Should().NotBeNullOrEmpty();
bucket.DocCount.Should().BeGreaterThan(0);
}