You need to configure the below mentioned files for rendering maps in Intellicus.
- Geo-spatial Information
- You should have role specific geo spatial information in CSV file with the following format as shown in the below example for Country Role.
Name,ISO Alpha-2 code,ISO Alpha-3 code,ISO Numeric code,Latitude,Longitude,Option1,Option2
Afghanistan, AF, AFG,4,33,65,,
Albania, AL, ALB,8,41,20,,
Algeria, DZ, DZA,12,28,3,, - Role specific CSV files with spatial data at “<Intellicus installation path>/ReportEngine/config/maps/CSV”
- There should be a configuration file “gisConf.json” to define metadata of CSV file at “ReportEngineconfigmapsGIS”. This file can also be used to define roles like continent, country, city, zip code etc.
{ “gisInfo”:[ { “role”:”Continent”, “fileName”:”Continents.csv”, “containsHeader”:”true”, “columnIndex”:{ “geographicName”:”0,1,4,5″, “gisid”:”1″, “latitude”:”2″, “longitude”:”3″}}]}
role: This is geo location type like country, state, city, zipcode etc.
filename: This is CSV file name having geo spatial data for any specific role.
containsHeader: This should be true if CSV file contains headers along with data.
columnIndex: This is set of following information –
geographicName: This is comma seperated list of column indices denoting synonyms of specific role.
gisid: This is a column index which is used to uniquly identifies geo spatial information.
latitude: This is column index of latitude column.
longitue: This is column index of longitude column.
parentInfo: This holds set of parent indices.Below is a file snippet specifying information pertaining to a specific geographic role:
{
“gisInfo”:[
{
“role”:”Continent”,
“fileName”:”Continents.csv”,
“containsHeader”:”true”,
“columnIndex”:{
“geographicName”:”0,1,4,5″,
“gisid”:”1″,
“latitude”:”2″,
“longitude”:”3″
}
},
{
“role”:”Country”,
“fileName”:”WorldCountries.csv”,
“containsHeader”:”true”,
“columnIndex”:{
“geographicName”:”0,1,2,3,6,7″,
“gisid”:”1″,
“latitude”:”4″,
“longitude”:”5″
},
“geojson”:[
{
“id”:”WORLD”,
“displayName”:”World – Countries”,
“fileName”:”countries.geojson”,
“ISOCode”:””,
“featureKeyName”:”ISO_A3″,
“featureKeyValueColumn”:”2″,
“parentId”:””
}
]
},
{
“role”:”State”,
“fileName”:”States.csv”,
“containsHeader”:”true”,
“columnIndex”:{
“geographicName”:”0,1″,
“gisid”:”1″,
“latitude”:”2″,
“longitude”:”3″,
“parentInfo”:{
“country”:”4″
}
},
“geojson”:[
{
“id”:”USA”,
“displayName”:”United States of America”,
“fileName”:”us-states.geojson”,
“ISOCode”:”US”,
“featureKeyName”:”name”,
“featureKeyValueColumn”:”0″,
“parentId”:”WORLD”
}
]
},
{
“role”:”County”,
“fileName”:”Counties.csv”,
“containsHeader”:”true”,
“columnIndex”:{
“geographicName”:”0,1,6,7″,
“gisid”:”1″,
“latitude”:”2″,
“longitude”:”3″,
“parentInfo”:{
“country”:”5″,
“state”:”4″
}
}
},
{
“role”:”City”,
“fileName”:”Cities.csv”,
“containsHeader”:”true”,
“columnIndex”:{
“geographicName”:”0,1,7,8″,
“gisid”:”1″,
“latitude”:”2″,
“longitude”:”3″,
“parentInfo”:{
“country”:”6″,
“state”:”4″,
“county”:”5″
}
}
},
{
“role”:”Postal Code”,
“fileName”:”CitiesZip.csv”,
“containsHeader”:”true”,
“columnIndex”:{
“geographicName”:”0,1,8,9″,
“latitude”:”2″,
“longitude”:”3″,
“parentInfo”:{
“country”:”7″,
“state”:”5″,
“county”:”6″,
“city”:”4″
}
}
},
{
“role”:”Latitude”
},
{
“role”:”Longitude”
},
{
“role”:”Latitude,Longitude”
}
]
}
- Roles specified in GISConf.json file can be assigned to query object columns from Query Object designer.
- You should have role specific geo spatial information in CSV file with the following format as shown in the below example for Country Role.
- Maps VisualizationAdministrators can configure the online map provider information such as:
- Map provider ID
- Provider Display Name
- Access key
- Provider/Script URL
- Map tiles information
A sample “MapProviderInfo.json” looks like below:
{
“providerInfo”:{
“mapProvider”:[
{
“id”:”LEAFLET”,
“displayName”:”Leaflet”,
“url”:””,
“accesskey”:””,
“isDefault”:true,
“tiles”:[
{
“displayName”:”Standard”,
“url”:”https://b.tiles.mapbox.com/v4/openstreetmap.1b68f018/{z}/{x}/{y}.png?access_token=pk.eyJ1IjoiYWRpdHlhc2hhcm1hIiwiYSI6ImNqOGs3eGM0ajA5ODMzM29ldnc5anUyOTgifQ.e4xbpIWlsAEDO5E46xnibw”,
“accesskey”:”pk.eyJ1Ijoib3NtLWluIiwiYSI6ImNqcnVxMTNrNTJwbHc0M250anUyOW81MjgifQ.cZnvZEyWT5AzNeO3ajg5tg”,
“attribution”:”© <a href=’http://www.openstreetmap.org/copyright’ target=’_blank’>OpenStreetMap</a>”,
“isDefault”:true
},
{
“displayName”:”Satellite”,
“url”:”https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}”,
“attribution”: “Tiles © Esri — Source: Esri, i-cubed, USDA, USGS, AEX, GeoEye, Getmapping, Aerogrid, IGN, IGP, UPR-EGP, and the GIS User Community”,
“accesskey”:””,
“isDefault”:false
}
],
“vectorProviders”:[{
“displayName”:”Vector”,
“url”:”https://free-{s}.tilehosting.com/data/v3/{z}/{x}/{y}.pbf.pict?key={key}”,
“attribution”: “© OpenStreetMap contributors, © OpenMapTiles”,
“accesskey”:”hlrADbCs65Ptxs4ey202″,
“isDefault”:true
}]
}
]
}
}
If you want to use a new tile other then default intellicus provided tiles, then you need to perform following steps
-
- Obtain a commercial subscription of tile which need to be used.
- After getting the subscription, you will get an access key.
- You need to specify following information in MapProviderInfo.json for that tile.
displayName : Display name of tile
url : Location of tile
access key
attribution : Attribution need to be specified as per policy of tile provider.
IsDefault: Set True if you want to make this as default tile.- Similarly, you can add vector tiles under vectorProviders section in the above code snippet.
- To render heat maps for a specific geographic role, you need to place the corresponding Geojson files (in zipped format) at “ReportEngineconfigmapsGISGEO-JSON”Also you need to specify following Geojson meta information in gisConf.json file.
“id”:”WORLD” is a unique geojson identifier
“displayName”:”World – Countries” is the name as would appear on the Map Settings on portal
“fileName”:”countries.geojson” is the name of geojson file
“ISOCode”:”” is the corresponding ISO code
“featureKeyName”:”ISO_A3″ is the feature key in geojson
“featureKeyValueColumn”:”2″ is the feature key column index in corresponding role CSV
“parentId”:”” is the parent geojson identifier - Increment the version number in “Version.txt” (at “<Intellicus installation path>/ReportEngine/config/maps/GIS”) if you modify any of the above-mentioned files.