Our step-by-step guide to create a heatmap to visualise the occupancy of a physical space over time.
Learn how we at reelyActive use Kibana heatmaps to observe the occupancy of a physical space over time.
reelyActive open source software with Elasticsearch and Kibana.
In order for there to be data to visualise, the reelyActive software must also have collected and written raddec data to Elasticsearch.
Create a heatmap in Kibana with the default settings.
Open Kibana and then:
The default settings will result in a heatmap with just one bucket being generated, similar to that below. The next step will be to define a meaningful set of buckets.
Define a meaningful set of metrics and buckets to visualize space/time occupancy
In the heatmap editor, configure the Metrics as indicated below:
Then configure the Buckets of the X-Axis and Y-Axis as indicated below:
The heatmap should now feature a grid of buckets providing a visualisation of relative occupancy by receiver over time, similar to that below.
The basic heatmap visualisation of space/time occupancy is complete. The remainder of the tutorial covers customization and the possibilities for going further.
Select pretty colours and more!
In the heatmap editor, select the Options tab at the top and consider customizing the following options:
Option | Description |
---|---|
Color Schema | Select an existing color schema or define custom colors. |
Reverse Color Schema | Reverse the color schema by selecting this checkbox. |
Color Scale | Select linear, log and sqrt scales to adjust the relative intensity of the bucket colours. |
Scale to Data Bounds | Check this box to adjust the lower and upper bounds to match the source data. By default the Y axis starts at zero. |
Percentage Mode | Check this box to change number into percentage. |
Each change should be saved by clicking the right arrow on the top of the tool bar.
This visualisation can be combined with other visualisations as part of a space occupancy dashboard, such as that below.
GET raddec/_search
{
"size": 0,
"aggs": {
"date": {
"date_histogram": {
"field": "timestamp",
"interval": "1h"
},
"aggs": {
"receivers": {
"significant_terms": {
"field": "receiverId.keyword",
"size": 10
}
}
}
}
},
"query": {
"match_all": {}
}
}
For our innovation of making physical spaces searchable like the web.
Create other visualizations, or continue exploring our open architecture and all its applications.