map
<discovery-tile url="https://sandbox.senx.io/api/v0/exec" type="map">
...
</discovery-tile>
{
'type' 'map'
...
'macro' <% %>
}
Name | Type | Description |
---|---|---|
data | GTS , GTS[] , custom data |
Data to display |
globalParams | Option |
Global options (see above) concerning this tile |
params | Option[] |
List of options (see above) concerning each displayed dataset depending of the index of this array |
events | Events[] |
List of events to emit (see below) |
Custom data:
string[]
: considered as GEOJsonGTS[]
: considered as Path
Options
Name | Type | Description |
---|---|---|
tiles | string[] |
List of custom tile layers |
mapType | string |
Base tile layer (NONE, DEFAULT, HOT, TOPO, TOPO2, STADIA, STADIA_DARK, TONER, TONER_LITE, TERRAIN, ESRI, SATELLITE, OCEANS, GRAY, GRAYSCALE, WATERCOLOR, CARTODB, CARTODB_DARK) |
startLat | number |
Initial latitude position |
startLong | number |
Initial longitude position |
startZoom | number |
Initial zoom level |
maxNativeZoom | number |
Maximum zoom number the tile source has available. If it is specified, the tiles on all zoom levels higher than maxNativeZoom will be loaded from maxNativeZoom level and auto-scaled. |
maxZoom | number |
The maximum zoom level up to which this layer will be displayed (inclusive). |
Supported option per series are:
- datasetColor: Hex CSS color of the series. ie: '#fff00f'
- key: Name the series
Params:
Render dots without lines:
{
'key' 'bases'
'render' 'dots'
"color" "#f44336"
"line" false
}
Render weighted dots:
{
'key' 'sightings'
'render' 'weightedDots'
"color" "#31C0F6cc"
"borderColor" "#31C0F6"
"maxValue" 100
"minValue" 0
}
Samples
Markers
<'
{
"data":[
{"c":"A","l":{},"a":{},"v":[[1460540141224657,51.45877850241959,-0.01000002957880497,1000,8.090169943749475],
[1460540131224657,51.49510562885553,-0.02000005915760994,1000,3.0901699437494745],
[1460540121224657,51.49510562885553,-0.030000004917383194,1000,-3.0901699437494736],
[1460540111224657,51.45877850241959,-0.040000034496188164,1000,-8.090169943749473],
[1460540101224657,51.39999998733401,-0.050000064074993134,1000,-10.0],
[1460540091224657,51.341221472248435,-0.06000000983476639,1000,-8.090169943749475],
[1460540081224657,51.3048943458125,-0.07000003941357136,1000,-3.0901699437494754],
[1460540071224657,51.3048943458125,-0.08000006899237633,1000,3.0901699437494723],
[1460540061224657,51.341221472248435,-0.09000001475214958,1000,8.090169943749473],
[1460540051224657,51.39999998733401,-0.10000004433095455,1000,10.0]]},
{"c":"B","l":{},"a":{},"v":[[1460540141224657,51.49999998975545,-0.10000004433095455,10],
[1460540131224657,51.45999999716878,-0.09000001475214958,9],
[1460540121224657,51.41999996267259,-0.08000006899237633,8],
[1460540111224657,51.39999998733401,-0.07000003941357136,7],
[1460540101224657,51.439999979920685,-0.06000000983476639,6],
[1460540091224657,51.47999997250736,-0.050000064074993134,8],
[1460540081224657,51.49999998975545,-0.030000004917383194,10],
[1460540071224657,51.51999996509403,-0.02000005915760994,9],
[1460540061224657,51.539999982342124,-0.01000002957880497,8],
[1460540051224657,51.55999999959022,0.0,9]]},
{"c":"D","l":{},"a":{},"v":[[1460540141224657,51.49999998975545,-0.10000004433095455,"a"],
[1460540131224657,51.45999999716878,-0.09000001475214958,"b"],
[1460540121224657,51.41999996267259,-0.08000006899237633,"c"],
[1460540111224657,51.39999998733401,-0.07000003941357136,"d"]]},
{"c":"E","l":{},"a":{},"v":[[1460540136224657,51.439999979920685,0.05999992601573467,true],
[1460540116224657,51.47999997250736,0.04999998025596142,false],
[1460540096224657,51.49999998975545,0.02999992109835148,true],
[1460540076224657,51.51999996509403,0.019999975338578224,false],
[1460540056224657,51.539999982342124,0.009999945759773254,true]]},
{"positions":[[51.5,-0.22],[51.46,-0.3],[51.42,-0.2]]},
],
"params":[
{"key":"Path A"},
{"key":"Path B"},
{"key":"Annotations (text)","render":"marker","marker":"star"},
{"key":"Annotations (boolean)","baseRadius":5},
{"key":"Test","render":"marker","marker":"circle"},
]
}
'>
JSON->
Weighted Dots
{
"data" [
{
"positions" [
[ 51.1 -0.52 10 ] // Lat Lon Radius
[ 51.56 -0.4 30 ]
[ 51.42 -0.6 40 ]
[ 51.3 -0.82 42 ]
[ 51.76 -0.7 20 ]
[ 51.62 -0.9 45 ]
]
}
]
"params" [
{
"key" "points"
"render" "weightedDots"
"color" "#aaf"
"borderColor" "#f00"
"maxValue" 100
"minValue" 0
"baseRadius" 5
"numSteps" 10
}
]
}
Colored Weighted Dots
{
"data" [
{
"positions" [
[ 51.1 -0.52 42 10 ], // Lat Lon Radius Color intensity
[ 51.56 -0.4 21 30 ],
[ 51.42 -0.6 84 40 ],
[ 51.3 -0.82 42 1 ],
[ 51.76 -0.7 21 20 ],
[ 51.62 -0.9 84 45 ]
]
}
],
"params" [
{
"key" "coloredWeightedDots"
"render" "coloredWeightedDots"
"maxValue" 100
"minValue" 0
"baseRadius" 5
"maxColorValue" 50
"minColorValue" 0
"numColorSteps" 10
"startColor" "#ff0000"
"endColor" "#00ff00"
}
]
}
GeoJSON
<'
{
"data" : [
{
"type":"Feature",
"properties":{ "nom":"Brest", "code":"29019", "codeDepartement":"29", "codeRegion":"53", "codesPostaux":["29200"], "population":139386 },
"geometry": {
"type":"Point",
"coordinates":[-4.501745593952485,48.402931706263466]
}
},
{
"type":"Feature",
"properties":{ "nom":"Gouesnou", "code":"29061", "codeDepartement":"29", "codeRegion":"53", "codesPostaux":["29850"], "population":5845 },
"geometry":{
"type":"Polygon",
"coordinates":[[[-4.49249,48.45395],[-4.49042,48.45361],[-4.49023,48.45549],[-4.48953,48.45799],[-4.48901,48.45866],[-4.48696,48.45879],[-4.48652,48.45917],[-4.48611,48.45919],[-4.48617,48.46085],[-4.48588,48.46175],[-4.48458,48.46245],[-4.48262,48.46249],[-4.48228,48.46292],[-4.48077,48.46365],[-4.4804,48.46403],[-4.47926,48.46435],[-4.47857,48.46486],[-4.47837,48.46632],[-4.4791,48.46777],[-4.47986,48.46824],[-4.47976,48.46833],[-4.4786,48.46755],[-4.47517,48.4693],[-4.47122,48.47006],[-4.47097,48.46824],[-4.47075,48.46805],[-4.4709,48.46771],[-4.47058,48.4673],[-4.47061,48.46638],[-4.47002,48.46551],[-4.46876,48.46504],[-4.46838,48.46435],[-4.46739,48.46395],[-4.4664,48.4638],[-4.46513,48.46389],[-4.4648,48.45995],[-4.46549,48.45716],[-4.45868,48.45678],[-4.45635,48.45627],[-4.45454,48.4564],[-4.45268,48.45599],[-4.45267,48.45584],[-4.45051,48.45517],[-4.44887,48.45502],[-4.44412,48.45522],[-4.44273,48.45567],[-4.44102,48.45589],[-4.43956,48.45688],[-4.43932,48.45761],[-4.43765,48.45777],[-4.43595,48.4583],[-4.4321,48.46001],[-4.43099,48.45919],[-4.43215,48.4572],[-4.43256,48.45487],[-4.4335,48.45186],[-4.433,48.45174],[-4.43242,48.45258],[-4.43018,48.45163],[-4.43044,48.45017],[-4.43008,48.44946],[-4.43059,48.44799],[-4.43151,48.4481],[-4.43153,48.44623],[-4.43304,48.44598],[-4.43312,48.44579],[-4.43481,48.44603],[-4.43693,48.44739],[-4.43853,48.44775],[-4.43899,48.44765],[-4.44001,48.44698],[-4.43965,48.4467],[-4.44056,48.44606],[-4.44191,48.44576],[-4.44167,48.44519],[-4.44094,48.4448],[-4.44064,48.4437],[-4.44104,48.4429],[-4.44087,48.44256],[-4.44117,48.44151],[-4.44179,48.44093],[-4.4419,48.44023],[-4.44238,48.44022],[-4.44266,48.43899],[-4.44239,48.4389],[-4.44246,48.43844],[-4.44184,48.43844],[-4.44179,48.43768],[-4.44136,48.4372],[-4.44195,48.43704],[-4.44203,48.43675],[-4.44407,48.43553],[-4.44185,48.4327],[-4.444,48.43229],[-4.44438,48.43195],[-4.44579,48.43174],[-4.44717,48.43129],[-4.44684,48.43064],[-4.44738,48.43051],[-4.44958,48.42921],[-4.45022,48.42845],[-4.45282,48.42888],[-4.45315,48.42809],[-4.45508,48.42746],[-4.45799,48.42546],[-4.4591,48.42489],[-4.46042,48.42415],[-4.46066,48.42575],[-4.46183,48.42697],[-4.46609,48.42967],[-4.46787,48.42863],[-4.47349,48.42759],[-4.47355,48.42847],[-4.47286,48.43036],[-4.47384,48.43181],[-4.47477,48.43249],[-4.47534,48.43264],[-4.47588,48.43314],[-4.47678,48.43444],[-4.47692,48.43542],[-4.47768,48.43661],[-4.47901,48.43733],[-4.48015,48.43752],[-4.48131,48.43727],[-4.48255,48.43774],[-4.48443,48.43776],[-4.48818,48.43837],[-4.48842,48.43853],[-4.48744,48.43958],[-4.48525,48.44045],[-4.48404,48.44149],[-4.48393,48.44272],[-4.48337,48.44312],[-4.48192,48.44502],[-4.48315,48.44446],[-4.48318,48.4446],[-4.48378,48.4447],[-4.48405,48.4454],[-4.48558,48.4462],[-4.48946,48.44743],[-4.48943,48.44795],[-4.48976,48.4484],[-4.48934,48.44908],[-4.48918,48.45038],[-4.49008,48.4504],[-4.49023,48.45081],[-4.49264,48.45151],[-4.4924,48.45273],[-4.49249,48.45395]]]
}
},
{
"type": "LineString",
"coordinates": [[-4.49023, 48.42232], [-4.45, 48.42443], [-4.4, 48.42298]]
}
],
"params": [ {"color": "#6D4C41", "fillColor": "#FFB300" } ],
"globalParams": {
"map": {
"mapType": "CARTODB",
"tiles": [
"https://tiles.openseamap.org/seamark/{z}/{x}/{y}.png"
]
}
}
}
'>
JSON->
HeatMap
NEWGTS 'g' STORE
0 100 <% 'ts' STORE $g NOW $ts 10000 - * RAND 20 * RAND 20 * NaN RAND 100.0 * ROUND ADDVALUE DROP %> FOR
{
'data' [ $g ]
'params' [
{ 'map' { 'heatmap' true } }
]
'globalParams' {
'map' {
'heatRadius' 25
'heatOpacity' 0.5
}
}
}
Simple path
NEWGTS 'g' STORE
1 6 <% 'ts' STORE $g $ts RAND + STU * NOW + RAND 50 * RAND 50 * RAND RAND ADDVALUE DROP %> FOR
{
'data' $g
'params' [
{ 'marker' 'home' 'render' 'path' 'line' true }
]
}
Custom tile server
NEWGTS 'g' STORE
1 6 <% 'ts' STORE $g $ts RAND + STU * NOW + RAND 25 * RAND 25 * RAND RAND ADDVALUE DROP %> FOR
{
'data' $g
'globalParams' {
'map' {
'mapType' 'NONE'
'tiles' [ 'https://tileserver.memomaps.de/tilegen/{z}/{x}/{y}.png' ]
}
}
}
Custom tooltip
[ 1 2 <% DROP NEWGTS 'g' STORE
1 5 <% 'ts' STORE $g $ts RAND 20 * RAND 20 * NaN RAND ADDVALUE DROP %> FOR
$g %> FOR ] 'data' STORE
{
'data' $data
'params' [
{ 'key' 'Joe' 'map' { 'tooltip' { 2 'Simple text' } } }
{ 'key' 'William' 'map' { 'tooltip' { 2 '<img src="https://warp10.io/assets/img/header-w-white.png">' } } }
]
}

Custom Markers
[ 1 4 <% DROP NEWGTS 'g' STORE
1 5 <% 'ts' STORE $g $ts RAND 20 * RAND 20 * NaN RAND ADDVALUE DROP %> FOR
$g %> FOR ] 'data' STORE
{
'data' $data
'params' [
{ 'marker' 'https://findicons.com/files/icons/1274/arcade_daze/48/pac_man.png' 'key' 'Url' }
{
'marker' 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAABggAAAYIBFx04PQAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAMkSURBVFiFrddNqFVVFAfwn/oSv0jtKZqPkiZiHyRpIWka2ixpUpBBhZhgg2jwBk0cFCES4SCIHFQDBbWocBDiwFLoKUWDBBE0sYwSeoZlPTV86ktvg7UPd3veve/ec+/7w2GfdfZee/3PXmuvtTdjYwnWYGqDvqdxEpfwOea0mKsSJuFT1NJzAcuy/kUYxtd4C39hP1ZhA+7rlsDzyfArYhWO4/usvx/X1Ffm9YxsDdexvhsCW3E+kzekiRckeTvOZf2bUv+r6MU+sSoTWxlqNuBXzMPcJA+kdnVqZ2EoGz8LN/AxLmJvIjK/EwJLRAxMED4tCJ1rQWAIt5I8PbXDVQhMxpfC3x+mb6uz/oFMnt2EQC7fwuUqBF7CM3gRj4gt9mTWfwQPCLeUDTYidAU3qxB4EL/gE7EKO/BwmqwgULilmQtyQv+0Ml4mcBF9wv9wNPU/keQzGBRumI2/SwbLcmUCpzEF9yb5pEhAeRwcFW6ZKTJggUYrUpnAj6m9P7U1fGt0HBS7pGywTKiQF+AAroqffLYZgZ8xgsXZtwEsxYxMnpDeW+2CodR+I2JpK87iM1la78mURtKAnMCRNGYFvsIpkeHmZAYnY1oDApewWySj5WKFe0QcPYdj5RUgligncCJNXLihlv4I/siMMXoXrMc6bFR37zQRZ1c1wTsi8HLsx8FMXogXMvkO7MI9SZ4k9n8N75bmek8UsabVsig6vdm3xeopuR3cmeY4pL6lieAdwdtjKS9PyisrGGyEjbgrkyfiOxHoU8ZSLNhv6pJAGZvTvOvaGTwo6v14oRd/imNbWzgsAm+8sFNUxb52FT4Q+WA8sEqU5f4qSi+7/fjVKXpEVT0htmrb6MN/4qDZDd4Q+eDxTpT3ibNBo/tAO1iIf/FRh/oeEhnr/Q50p+IH/O72XFAZ/SIWtlTQmS5W74b6QaYrbEskvtA6KB8V1XJYl5eSMs4mEtewRxxal4nr2VN4TaTZ4la0djyNw0/J8JvpvVZ6booSXdwl5zacpQl6Wg8Bd4vDyXaxTReJonIev4nz32NVDFfBAaP/utkzqEW1K+N/QkDNWuXUcakAAAAASUVORK5CYII='
'key' 'base64'
'map' { 'iconSize' [ 128 128 ] }
}
{
'marker'
<'
<svg xmlns="http://www.w3.org/2000/svg" width="40"
xmlns:xlink="http://www.w3.org/1999/xlink" height="37">
<g id="u"><g id="t">
<path id="s" fill="none" stroke="#321" stroke-width="2.4"
d="m13,6.5a13,13 0 0,1 3-1.2v-4h8v4a13,13 0 0,1 3,1.2M19,12.5a6,6 0 1,0 2,0z"/>
<use xlink:href="#s" transform="rotate(45 20,18.5)"/></g>
<use xlink:href="#t" transform="rotate(90 20,18.5)"/></g>
<use xlink:href="#u" transform="rotate(180 20,18.5)"/>
</svg>
'>
'key' 'SVG'
}
{
'marker' 'home'
'map' { 'iconSize' 48 }
'key' 'Standard'
}
]
'globalParams' {
'map' { 'render' 'path' 'iconSize' 24 }
}
}
Custom Markers and clustering
'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAABXxJREFUaEO9WstuHUUQPTU35hUIYu3HF0SCBQRD8gFEsM0GpMj3mdjC/AuERzz3gYQEm2yxbj4gwgnZWIIviM2aEENCuPIU6p7pmZ7px/SMrzKr657urnOqu6pP15jgewgAuzvYX7sHGW/0BvnbMjYAg5dDc37tQCjsNXgBlHuIv7KHQGCfw1sR9QKqR1vFKzEUwwRmx2OsbsuOxc7IZgwBbdjybEvXq91dfvn5M9w4ZXwaARcBnE8Dws7Z/abVwolB/yTA7xHjx1fOI751i57bZiptIRWxN68nq6crtA/g7dbms4GtiOmD0t+HnQU+uf0D/VHFY7hTeP7fp3hQgBdxQSAvklYwcyyu0RUeh6++hs3qShgERkP+ghN8qTM9G7yKz0Imc/QhYDee0tf6jFSNgWGfhfcvaZ32OwvcsC1fq+0VmGUHA15jRhwBV4UdySnB/fH39EGJQPWPfo9PiPC6amfC+mRCx63AnmkQodtN1s9FeKRNczKe0gU9lxpbaNjn0tk7nspFwqjPHyeEPWKs2nAx45iA0XhG86pT0kMqdX0+TyKdOhrPornRThiNp+k8Jp6IdHmQEtAMuAgMe3wEwprLqQJNBBzFU9rQPVT9rebR+wvzA21+kvNEGwKoC0+Kw3KQOQn0+QhwEUijjhhH8SwjYLBITeqOSIHSRkGA1zJQuSP8BCynkmcFRDDF+iroyUKAEVtob0p3fYftsMdyHiK5qWT/jJi9PdvSypba0monGFloYAni6YSOPaLUE6rBgsSqebpddgdxZtUM4i4fIMKmQpWA50Q0MjNRK1FjBWrbbRI8yRX/KM+IjF8mM7qshSyMFRgNeZsT/ra95gk5qVrmV8b2eEa3neeAeHHtGr/05hu4R4T3WpppOKyGsHzNIg3/SudwJY5p4SUgtNCzp7hHwLse8ekB2XIF6oYxHj4+wZU7d+g/L4Fhn3cAfNPQjc7udbia2CHCTjyh7/wEZBDzphYDDbVQSHDXC6KqFhKgGTiYTOlDLwFbGjUykGE/BHQTX6d9t7q8vkJ4pN2hCi3kTKMttRAYQvAZWqgK29RCNBf0h0pr5RrJooUYGM9SbZYfZFUDbbWQmMeUEqbXh5okUVJC9LJJDNnucKi62Qer0ToxJwnoYs6xY0pANe1kEiiLOaeUsK9AkTuU9lAaxqVIdS1kx57GiamForv29lRTDVwrII1Y1KgziJccp67p9PZ2WmiLD9Ap0mgCzIlg0ULNs0r9iAK+uI11iIRqNbSQN4hHA95mdmshA8QyT6p6htvj6QvQQnZOIcWTcumsNIKRaaFoYV4ptUPhc10L1XvE0qP5koQQZsbDv4K0UI93QGUtpARhfiKGYKxUpdxV2HAvNdBCxYUG4P3OgprXhSyXsSaJTGihhBF3GFcF+exG6NdCwoCzLlSjv5qAK/u8PPLsaTRECxl7Sp5Rx9DqOSlIk5ZNC4mervaSlFiuFipvclEAVnWhmqpEXl9S9R/xYcWsC2XlFt2hyyVgfi3Q6zy2z11e0SYLW5a6UI+Fb/LHKKs0UKNGXahyIuZ1IV9eCdJCjNHeLKsXebWQpfSwNC3UPqpz/llpJeBCkxnLSnwPQHxJcWukhZYAWsV+d4vXOyQreLkWQkh5fdDjXRC+siWafNcbB1m5IeScCz6+NCDWDxzVbJd+YuL7AL1jGmkOLUQmeMkUExw+foL3a8sqYrKb13n1dAU/A6iQaE6gmaedvcM/8qkpRIXurQsYcYLPmHBR/2rjBxVYabOKo2IsM/4G4bcI+OnPJ4irnlcYjBt+uyp09Ypx9llCV84o7oYOfGH9ajKbUZVwaRg/YLfSs4jSQO5hOdlBwG2jmNZtQL7x2s/+scR7sw8j8D+25CRhDGiCwgAAAABJRU5ErkJggg==' 'a' STORE
'data:image/png;base64,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' 'b' STORE
[ [ 51.5 -0.22 'on' ] [ 51.5 -0.22 'off' ] [ 51.5 -0.22 'on' ] [ 51.46 -0.3 'on' ] [ 51.46 -0.3 'off' ] [ 51.46 -0.3 'on' ] [ 51.46 -0.3 'off' ] [ 51.42 -0.2 'on' ] ] 'positions' STORE
{
'data' [
{ 'positions' $positions }
]
'globalParams' { 'map' { 'cluster' true } }
'params' [
{
'key' 'DataSet 1'
'render' 'marker'
'marker' $positions <% <% 2 GET 'on' == %> <% $a %> <% $b %> IFTE %> F LMAP
'map' { 'iconSize' [ 50 50 ] }
}
]
}
Custom Marker's colors and clustering
{
'data' [
{ 'positions' [ [ 51.5 -0.22 'on' ] [ 51.5 -0.22 'on' ] [ 51.5 -0.22 'on' ] [ 51.46 -0.3 'on' ] [ 51.46 -0.3 'on' ] [ 51.46 -0.3 'on' ] [ 51.46 -0.3 'on' ] [ 51.42 -0.2 'on' ] ] }
]
'globalParams' { 'map' { 'cluster' true } }
'params' [
{
'key' 'DataSet 1'
'render' 'marker'
'marker' 'star'
'map' { 'iconSize' 50 }
'color' [ 'blue' 'green' 'green' 'green' 'green' ]
}
]
}
Clustering keeping the dataset icon
In this example, clustering is done on several dataset (clusters do not mix the datasets), and the clustered icon is the dataset icon (with clusterCustomIcon
option).
The cluster radius can be adjusted with maxClusterRadius
.
{
'data' [
{ 'positions' [ [ 51.5 -0.22 'serial 2447' ] [ 51.6 -0.24 'serial 4787' ] [ 51.6 -0.2 'serial 6647' ] [ 51.35 -0.1 'serial 8777' ] ] }
{ 'positions' [ [ 51.45 -0.2 'serial 42' ] [ 51.8 -0.12 'serial 78' ] [ 51.36 -0.0 'serial 4775' ] [ 51.3 0.1 'serial 1112' ] ] }
{ 'positions' [ [ 51.75 -0.11 'serial 6666' ] [ 51.78 -0.13 'serial 6667' ] [ 51.765 -0.15 'serial 9477' ] ] }
]
'params' [
{
'key' 'All OK'
'color' 'green'
'render' 'marker'
'map' { 'iconSize' [ 32 32 ] }
'marker' 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAOxAAADsQBlSsOGwAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAARqSURBVFiFtZdrbFRFGIafObvbK7ULC9uWrQ3bGkBiSMGogFwTYwCDBDUKWtJ2xR+EAiI1RIhFLQGEgjGFSNW2lpQ7wSARkMRLxIT4A1JDpDQK3dL7ZQuU1tNtt+f4o5ztOd3Sy5Z9f53vnW/m+eZkZjIj6K/iSVZM3ZkIloM6BbADUkDe8KQATaDeRHCWsMhi3rx9X58gDOmlE10o7EUwLkjgUPKA+IDVtYc1o29mpY6dqBSGEA5gA7WE0oRczej9A6UTXagUamZSpIP1zkwWjZ9NfLidMMkSFK1L6abe28ivLVfIryymWq7raxQig7TaEsGRpLEovlvAWIBF4+dQlJpHtCkqKOij1O7rwFWWzW+eK5rlwRf2lITie1eDJ0U6QgIHGGOOpig1j8SIBM2yYe52ScAyzclyZoQEri8iy5mhc5RlEjBFCxfYZoUMrmnh+Nm6SEw1AxO00B5uCwnU47tHfv1RulUf6+JX6pvsZnRbUQr6vBlYKionPT+Rc+cAd3vaAPCqXfoUyfxYiTpVemvJrsrjcttVg2/BZIgf75Qf6kjLjyz4O8MAFwjesi1mc0K6ITfgD1TIbizCTHJE4ojBsuJlS9V+jnsuGHxnuIO9k7KZH/Msck/nows41XqJD6v2IQmJ3CezWGN/fdjwSm8tGf9uo1y+7fdMwkRW/Co2J6QTIYUP2M9QwOW2q6io9Kg9bL3zJbLiZX3820PCr3WU884/W/D47vk9u2UcBcnbeTFmxqB9DWsgbcIywkWYP86tOUR+w9FBB7h47w9WVGwwwOfEpPLztMIh4QEFPB/9DEcn7yFKivB7O2oKONv6y4CdT3kukXnrY2TF6/dc9hWcnvwFcZbhnSkBu2BezExOTM7zF6Gist69i786Kgx5xz0X2ODeRY/aA/Su8pzEtexO2oRZmPoPO/wCAF4YM51DyTlIore5U/Gy0b2bbtUHwLGW87zv/twPNwsTB53byIpfNWzwoAUALLbOZavjPX98Q77FV40nONZynk1Ve1BUBQCLMFOQvJ03bC+PGA4DnAN6rYtbyfm7v3OtoxyA/XUldKpdBvjXKZ/winV+UHAY4iQ0CRM7kzb64/+UTgP8m5RPRwUfsgCAmdHTmBH9tMGzCDPfpnzGUuu8UcG1AhQtUPo+DfrIsQbTw5UdZ7FRlJLLEuvcoID9GIoZaAbiAJq8HpxRgTeihU88R9n001ztuMFLsbMIE8FdUgEaOpv1YZME+De47sIYoDiLjaXWeaOCBzLUmxJwTgsPVH5Hu69jVIDB9MDXzkF3ic6RzklI5kJUWgGq5TpcZdkhKeKBrx1XWTY1cr1mefBZikycud/JazHNwHIAt1zDmYaLhEthWC2xRJki/QtwpOpSuqmW6/m+4SJrr2/lettNXatYS3r1n31vw8MJOxBiW3DzG7FyWV2XAwGPU0c6qroPCM31GFoQ6ibS6ks1QwSknEyOpUvORBGvIphK7xYdzfO8ESgH9QeEt5i01jZ9wv94d3pvl17KSgAAAABJRU5ErkJggg=='
}
{
'key' 'Disconnected'
'render' 'marker'
'marker' 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAOxAAADsQBlSsOGwAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAASaSURBVFiFvZdfSFRZHMc/5975r3TvOKOLo1HBDhMEvURPPZW0Qnh3VXrpya0tkN6UHgLFjJYlWPZpIYbEjXKKtGhyZx607CkJzHrqQZdWiKJkJxVdDHMc79mH6V7GmbWc0fw+3d85P+73e+49v9/5HkEe4vG4rqrqSSHED0AEqAKU/LwNwgRSwKQQYtDtdl87evToQm6CyA2SyeQpKeWvQEWJhF/CLNBuGMYNa8BeWSKR+EVK2fsVyQECwPVEInHJGhBgr7zXGnS73YRCITRNw+l0oiil/QHTNFlZWWFhYYF3796xvLxszwkhfmxoaLguksmkX0o5BfgBNE0jHA6jqmppa1wHq6urvHz5koUFewvMZjKZbxXTNH+yyN1uN+FwGEVRePPmDVLKkgkzmQyvX78mnU4DoKoq4XAYl8tlpQQcDscpBTCskVAohKqqXLhwgQMHDnD69GlWVlaKJpdSEovFuHnzJr29vWQyGVtEKBTKTTUUIUTEinbs2AFAKpUCIJFIcPbsWVZXV4sS8OHDB6anpwGYn59ndnbWntM0LTd1rwJUWpHT6QTg8uXL7N+/H4DBwUFaW1vtVWwEpmmuG1scn1ClkFOKQmTbgq7r9Pf3E4lEbBFtbW0FL7bw+PFjenp6eP78+RfFWRyfsH59BQIB4vG4LaK/v5/29vYCEXNzc4yOjjIzM8PIyMiaUtsIPlvgwWCQgYEBdu/eDcCtW7c4d+7cmur4+PGj/Wyapr3rt0QAQHV1NfF4nF27dgEQi8Xo7OwsimRTAgBqamqIx+Ps3LkTgJ6eHrq6urZPAEBtbS0DAwP4/X4AotEo3d3dmxbgKCrZ4aCxsZE7d+6wuLjIlStXME0Tr9dbsoCiTpl0Oo2u6xw/fpyysjIg+yXGxsa2R4AFv99Pc3MzFRXZk/vJkyeMj49vvYBXr14xPj7O0tJSwVwwGOTu3bt2ax0dHeXZs2dbJ+Dt27fcvn2bkZER7t+//785+/bt4+rVq3g8HiDbEfv6+ooSsO4mTKVSdsN5//79ui+IRCI0NjZy79490uk0Fy9ezG+3n0WpZnMNqquraWpqwuVyIaWku7ubFy9ebJ8AyHqJpqYmfD4fUkoePXrExMTEhgTYp8tmHJAlIhqN4vF4kFIyPDzM5OTkmpw8DlMB7B9civvJx6FDh4hGozgcDqSUDA0NMTw8bM/ncaQUKeVfVpRjGAkEAgXPFRUV9gYLBAIIIdB1HYcju5e9Xi8+n4/6+nqam5tRVRUpJR0dHTx48KCAA5hUT5w4ERRCfAewtLREZWUliqKgaRpVVVUEg0EOHz6My+XC5/NRW1uLruscOXIEj8eD0+lkz549lJWVUVdXR3l5OYqicPDgQbxeL0+fPiWTyTA2NsaZM2eYmprKtXi/W7b8bz5dSLbalieTSc6fP49hGLS0tBTYcgGQSCROAn9YM1t9MZmfn2d6ejrfLbUYhnHD7hjJZPJnKWVHSUzF45JhGF1QeDltkVL+RvYO9zUwI4Roa2hoiFkDBT3z4cOH2vLy8kkp5ffAXuAbNnc9/weYAP5UVfXasWPH/s1N+A/hSMnCCuYIDAAAAABJRU5ErkJggg=='
'map' { 'iconSize' 32 }
'color' 'orange'
}
{
'key' 'Error'
'color' 'red'
'render' 'marker'
'map' { 'iconSize' [ 30 32 ] }
'marker' 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAOxAAADsQBlSsOGwAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAPqSURBVFiFxZc7TFtnGIaf/9jmYoMvgMNFpoOpaIYQgRiAASlCwUEKLiuDRQphQYJE7cBApS6pulQdWNiSKFF3q4UIOcnCwASSpRBBsMSIgJRLQMIGH5/zdyDHHNs4UAer73S+9/u/874+/8X/J8iCvHPHTUnJMDAAfAfcAJTscVeEDnxEyg8oyl9o2nPx9u2heYDIEA8ERoDfgaoCBS/DHkL8JCKRlwaR/mUyEPgNeFpEcYBqpHwhA4EnBiE+i498FgdA83pJBIMkW1rQPB6wWguTS6Ww7O9TsrJC+ewslt1dc/YH8fr1CyHv3/egqhuAByB5+zZHjx4hy8oKE80DcXKCc3qakpUVg9ojmfxWQVUfGuKa11sUcQBZVsbR48do1dUGVY3NNqIAQYNJ9PcXRdxsItHfb6aCCmdbDYDkrVtFE09rtLScB0LcVACvEesuV9EN6G63ObxhxXzIKGeP+/v7HB8fX/iCmpoaysvLC3egZJxpSs7+WlhYIBwO56232WxMTU3h8XgKN2F2kE2sr69/sUBVVRKJxLWIA+Q9YaxWK6FQKIf3er00NDTk8JqmAWCxWHJyqVQKi8WCECInl9eAoii0trbmS7O0tEQ0GqWrq4vFxUVisRhCCAYHB9nZ2WFvb4+2tjbm5+fZ2trCbrczNjbGN7W1VzNwGcLhMPF4nNXV1Qx+eXk5PY3RaDTNx+NxNjc3r24glUoxMzOTwblcLoLBIE6nE1VV03xFRQW9vb1omobP58tYRz6fj46ODqSUtLe3g5RXM6DrOrFYLIevr6+np6cnHSuKwvj4OHV1dQBsb2+nc263m4mJCUpLS89fkExezYAQgvr6+gzO5XLlrIvm5ua0eDY6OzszxS9AXgM2m43JyckvFsPZ588Hu91+aX2hV61rw/9uIO8UqKp64RQ0NjYyOjpaPAPGnEopSWatWICNjQ02NzdxOBx8+vSJysrKjLzD4UAIgZQyJ5fPgI4xFbpOX18fDoeD09PTCwu8Xi9NTU0MDQ2xtrZGd3d3Rr6yspJQKMTBwQEt5v9+A7qeEVmBf4BaAOXwkKraWgYGBi517vf78fv9F+ba29vz1ikHB+bwowKkjy3ThbFoKHn//jyQ8oMCzBpx+dwc4uSkaOIikcD+6pWZmlWw2Z4C+wCW3V2c09NFMSESCZzT0yjnvcEeqvrsrDG5d28YKZ8ZGa2m5rwxqar6+sbk3Tvsc3NmcRDigYhEXqZvCDIQ+BX4uTCl/wghnohI5BfIbU4fAH8A1RfVXYPwLrr+o3jz5s80lT1G3r3rwmIZRsrvgZucbdGvac93gDWk/Bur9bmYnz8yD/gXwKBHJwNxAm8AAAAASUVORK5CYII='
}
]
'globalParams' { 'map' { 'cluster' true 'clusterCustomIcon' true 'maxClusterRadius' 100 } }
}
Point of Interest
A Point of Interest (POI) is a specific datapoint you decide to focus on by clicking on it. It emits an event which contains the list of POIs. By listening this kind of event, you can decide how to handle them.
{
'cellHeight' 90
'vars' {
'myPOIs' [] // The dedicated var that contains POIs
}
'tiles' [
{ // map with POI support
'type' 'map' 'x' 0 'y' 0 'w' 12 'h' 2
'options' {
'timeMode' 'timestamp'
'eventHandler' 'type=variable,tag=markers'
'poi' T
'poiColor' 'blue'
'poiLine' 'dotted'
}
'macro' <%
[
1 4 <%
'i' STORE NEWGTS 'data-' $i TOSTRING + RENAME 'g' STORE
1 10 <% 'ts' STORE $g $ts RAND RAND RAND RAND ADDVALUE DROP %> FOR
$g
%> FOR
] 'data' STORE
{
'data' $data
'events' [
{ 'tags' [ 'pois' ] 'type' 'poi' 'selector' 'myPOIs' }
]
}
%>
}
{ // Display selected POIs
'title' 'POI'
'type' 'tabular' 'x' 0 'y' 2 'w' 12 'h' 3
'options' { 'eventHandler' 'type=poi,tag=pois' }
'macro' <%
{
'data' {
'columns' [ 'date' 'lat' 'lng' 'name' 'value' ]
'rows' $myPOIs <% 'date' GET %> SORTBY <%
'p' STORE
[ $p 'date' GET $p 'lat' GET $p 'lng' GET $p 'name' GET $p 'value' GET ]
%> F LMAP
}
'globalParams' {
'tabular' { 'fixedWidth' true }
}
}
%>
}
]
}
Found an issue on this page or something missing?
Tell us on
The Lounge, the Warp 10 Community Slack.