An indicator drill allows you to further analyse an indicator. Indicator drill consists of an array of blocks. These blocks can be displayed either after clicking on an indicator, or directly on a dashboard.
...
It is possible to display any block directly on a dashboard by setting the onDashboard
property to true
(see examples below). The block will be accessible and controllable without having to drill down on the indicator.
...
Additionally, it is possible to add annotations
. Annotations are basically events that can be displayed in the timeSeries
graph. The data for annotations are stored in a specific date
subtype dataset, named e.g. "events". This dataset must contain a foreign key property containing id of the object to which the event relates to - in this case shops
. It also must be linke to the dim_dates
dataset of the date dimension, and contain a description
of the event (which also must be in the featureTitle
property). The visual representation of such timeSeries
block can be found below.
Code Block | ||||
---|---|---|---|---|
| ||||
{ "name": "events", "type": "dataset", "title": "Events", "properties": { "featureTitle": { "type": "property", "value": "description" } }, "ref": { "type": "dwh", "subtype": "date", "table": "events", "primaryKey": "id", "categorizable": false, "fullTextIndex": false, "properties": [ { "filterable": false, "name": "id", "title": "Id", "column": "id", "type": "integer" }, { "filterable": false, "name": "shop_id", "title": "Shop id", "column": "shop_id", "type": "integer", "foreignKey": "shops" }, { "filterable": false, "name": "date_iso", "title": "Date iso", "column": "date_iso", "type": "date", "foreignKey": "dim_dates" }, { "filterable": false, "name": "description", "title": "Description", "column": "description", "type": "string" } ] } } |
...
Distribution also has a description, which is not configurable through metadata, but is compiled from the properties of its paired indicator
, according to this formula: "Distribution of indicator.title
in granularity
"
Key | Type | Optionality | Description | Constraints | ||||||
---|---|---|---|---|---|---|---|---|---|---|
type | string |
| type identifier, always | [ | ||||||
onDashboard | boolean |
| determines if the block should be displayed directly on a dashboard | [ |
...
Ranking also has a description, which is not configurable through metadata, but is compiled from the properties of its paired indicator
, according to this formula: "Rank of object
according to indicator.title
" (note: object
in this case is either a polygon from a certain granularity, or a marker).
Key | Type | Optionality | Description | Constraints | ||||||
---|---|---|---|---|---|---|---|---|---|---|
type | string |
| type identifier, always | [ranking] | ||||||
onDashboard | boolean |
| determines if the block should be displayed directly on a dashboard | [ | ||||||
featureType | string |
| specifies which feature type should be ranked by default default = | [granularity, markers] | ||||||
direction | string |
| specifies the direction of ranked objects default = | [ |
...
Time series also has a description, which is not configurable through metadata, but is compiled from the properties of its paired indicator
, according to this formula: "Progress of indicator.title
from view.content.filterGroup.globalDate.startDate
to view.content.filterGroup.globalDate.endDate
"
Key | Type | Optionality | Description | Constraints | ||||||
---|---|---|---|---|---|---|---|---|---|---|
type | string |
| type identifier, always | [ | ||||||
onDashboard | boolean |
| determines if the block should be displayed directly on a dashboard | [ | ||||||
defaultPeriod | string |
| specifies the default period dataset selected by default | /rest/projects/$projectId/md/datasets?name={datasetName} | ||||||
additionalSeries | array |
| array of additionalSeries objects | |||||||
annotations | array |
| array of annotations objects |
...
Contains link to an additional time series indicator. See the syntax example above.
Key | Type | Optionality | Description | Constraints | ||||||
---|---|---|---|---|---|---|---|---|---|---|
indicator | string |
| URL link to the indicator object | /rest/projects/$projectId/md/indicators?name={indicatorName} |
...
Contains link to a dataset with annotation data. See the syntax example above.
Key | Type | Optionality | Description | Constraints | ||||||
---|---|---|---|---|---|---|---|---|---|---|
dataset | string |
| URL link to the dataset object | /rest/projects/$projectId/md/datasets?name={datasetName} |
...
Key | Type | Optionality | Description | Constraints | ||||||
---|---|---|---|---|---|---|---|---|---|---|
type | string |
| type identifier, always | [ | ||||||
title | string |
| human-readable title of the categories block | (*) | ||||||
description | string |
| description of the categories block | (*) | ||||||
splitProperty | string |
| identifier of a dataset property, by which the classes of data will be split | {datasetName}.{datasetProperty} | ||||||
indicator | string |
| URL link to the indicator object in case the block should not drill its paired indicator from the dashboard | /rest/projects/$projectId/md/indicators?name={indicatorName} | ||||||
onDashboard | boolean |
| determines if the block should be displayed directly on a dashboard | [ | ||||||
collapsed | boolean |
| determines if the block should be collapsed when entering the view | [true, false] | ||||||
visualized | boolean |
| determines if the block should be visualized when entering the view (= if qualitative visualization should be enabled, more here) | [true, false] | ||||||
filterable | boolean |
| flag that allows you to turn off the default filterability if not present, the block is filterable, must be set to | [true, false] | ||||||
hideNullItems | boolean |
| determines if the block should display categories with null or zero values default = | [true, false] | ||||||
sizeLimit | integer |
| limit the size of displayed categories | x => 1 | ||||||
orderBy | object |
| specifies ordering of the properties in the block if | |||||||
vertical | boolean |
| determines if the block should be vertical doesn't work with | [true, false] | ||||||
condensed | boolean |
| determines if the block should appear as condensed or not see visual representation below | [true, false] | ||||||
dualProperty | string |
| identifier of a dataset property, by which the data will be dually split block with | {datasetName}.{datasetProperty} | ||||||
label | string |
| determines the default label of condensed categories it is not possible to set the | (*) |
...
The data in the distribution block below are evenly distributed, and distinctively separate the areas of interest.
Ranking block
This block ranks areas by a specific indicator. In this case, it's the number of customers turnover value in Ward areasadministrative units.
Time series block
Time series block shows progress and trend of a selected indicator over a specific period of time.
Time series block with additionalSeries
This block contains one additional indicator in the additionalSeries
. It shows the comparison of offline (blue) and online (black) turnover. See the syntax example above.
...
If you specify more than one additional indicator, a dropdown menu with all other available indicators is displayed.
...
Time series block with additionalSeries
and annotations
Events specified in the annotations
array are related to a specific object - in this case a marker. So, note that to see them - we have to drill down on that specific marker. See the syntax example above.
...
Categories block
Categories block lists specific classes of data.
This is a comparison of Total turnover by each day of the week.
Categories also offers some additional configuration. It is possible to make the block condensed, or make it dually split (age pyramid). In condensed and dual mode, the detail of each category can be shown by hovering over it.
...
regular | condensed | ||||
---|---|---|---|---|---|
|
| ||||
dual | vertical | ||||
|
| ||||
Blocks on a dashboard
Available by setting the onDashboard
property to true
.
distribution |
|
---|---|
| timeSeries |