-
Notifications
You must be signed in to change notification settings - Fork 8
Neon Dashboard Configuration Guide 1.1.5
Version 1.1.5
Created by the Next Century Neon Development Team
- Configuration Introduction
- Configuration File Options
- Dataset Object Options
- Database Object Options
- Table Object Options
- Field Object Options
- Map Configuration Options
- Map Layer Object Options
- Line Chart Object Options
- Linky Configuration Options
- Option Object Options
- Visualization Object Options
- Dashboard Options
- External Services Options
- User-ALE Options
- OpenCPU Options
- Help Options
- File Options
To run the Neon Dashboard, create a configuration file at app/config/config.yaml or app/config/config.json. If config.yaml is present, config.json will be ignored.
Sample configuration files are available in the git repository at app/config/sample.config.yaml and app/config/sample.config.json.
Notes on file protections:
-
The configuration values can in theory be set by anyone. However, the config.json is within the war at app/config/config.yaml or app/config.json. Under tomcat, this file is within the webapps directory. Therefore, the file will need to be modified by someone with write privileges on that directory.
-
The user of the GTD has the option to save the work that they do. This data is saved in a Derby database, which is written to the savedStates directory located under the root Tomcat directory in Linux and under the bin directory on Windows. This can only be written if the process that runs Tomcat (often a tomcat7 user) has write privileges on that directory. If you want to be able to save the state, an administrator will need to make that directory writable by the appropriate user. In the future, the location that the Derby database will be written to will be configurable.
datasets - An array of dataset objects representing datasets available through the NEON Dashboard. Each dataset objects has the following properties:
- name
- datastore
- hostname
- layout
- connectOnLoad
- databases
- relations
- mapLayers
- lineCharts
- mapConfig
- linkyConfig
- options
Please see Dataset Object Options for details.
layouts - An object containg names of visualization layouts each mapped to an array of visualization objects. These define the structure, orientation, and default options for visualizations in a dashboard. Layouts here are available for the objects in the datasets property. Each visualization object has the following properties:
- name
- icon
- type
- sizeX
- sizeY
- minSizeX
- minSizeY
- bindings
Please see Visualization Object Options for details.
visualizations - An array of visualization objects representing visualizations available through the "Add Visualization" button in the navigation bar. Please see Visualization Object Options for details.
dashboard - (Optional) Miscellaneous properties. Please see Dashboard Options for details.
externalServices - (Optional) Properties for linking the Neon Dashboard to external applications through web-intents-like services. Please see External Services Options for details.
userale - (Optional) Properties for logging user interaction through Draper Laboratory's User-ALE library. Please see User-ALE Options for details.
For more information about the User-ALE library, visit their GitHub Page.
opencpu - (Optional) Properties for adding behavior from the Neon OpenCPU library to the Timeline. Please see OpenCPU Options for details.
For more information about OpenCPU, visit their website.
help - (Optional) Location paths to guides and videos to link to in the navigation bar help menu. Please see Help Options for details.
files - (Optional) File paths to other configuration files containing additional datasets and layouts. This option is available for users who want to save datasets and/or layouts in files separate from the config.json file. Please see File Options for details.
theme - (Optional) The starting dashboard theme. Options: light-green, dark-green. Default: light-green.
Example:
{
"datasets": [{
"name": "Earthquakes",
"datastore": "mongo",
"hostname": "localhost",
"layout": "default",
"databases": [{
"name": "test",
"prettyName": "Default DB",
"tables": [{
"name": "earthquakes",
"prettyName": "Earthquakes",
"fields": [{
"columnName": "_id",
"hide": true
}],
"mappings": {
"date": "time",
"latitude": "latitude",
"longitude": "longitude",
"line_category": "type",
"bar_x_axis": "net",
"y_axis": "mag",
"color_by": "magType",
"size_by": "mag",
"sort_by": "time",
"count_by": "net"
}
}]
}],
"lineCharts": {
"myLineChart1" : [{
"name": "Earthquake Magnitude over Time",
"database": "test",
"table": "earthquakes",
"xAxis": "time",
"yAxis": "mag",
"aggregation": "sum",
"category": "net",
"active": true
}]
},
"mapConfig": {
"myMap1": {
"bounds" : {
"left": -180,
"bottom": -90,
"right": 180,
"top": 90
}
}
},
"mapLayers": {
"myMap1": [{
"name": "Earthquakes Points",
"database": "test",
"table": "earthquakes",
"type": "points",
"limit": 5000,
"latitudeMapping": "latitude",
"longitudeMapping": "longitude",
"colorBy": "magType",
"sizeBy": "mag",
"active": true
}]
}
}]
}
name - The human-readable label for the dataset displayed in the UI (can contain spaces and punctuation).
datastore - The type of database server (for details on which versions are supported, see Neon Run-time Dependencies):
- mongo
- sparksql
- elasticsearch
hostname - The host name/address of the database server and the port number, if not the standard port number for that database (e.g., "example.com:1234").
layout - (Optional) The name of the visualization layout created when the dataset is displayed. The name corresponds to the layout in the layouts property. Default: "default".
connectOnLoad - (Optional) Whether this dataset is automatically displayed when the dashboard is first loaded. If multiple datasets have this value set to true, only the first one with this field will be loaded. Default: false.
databases - An array of database objects each with the following properties:
- name
- prettyName
- tables
Please see Database Object Options for details. Databases will appear in dropdown boxes in the order they are listed.
relations - (Optional) An array of relation objects. Each relation obect has one or more properties whose names each correspond to a database in the dataset ("database property"). Each database property is mapped to another object which has one or more properties whose names each correspond to a table in the database ("table property"). Each table property is mapped to the name of a field in that table. The primary use of this feature is to sync filters on like fields in different tables/collections.
Example:
{
"datasets": [{
"relations": [{
"database1": {
"tableA": "fieldX",
"tableB": "fieldY"
} ,
"database2": {
"tableC": "fieldZ"
}
}]
}]
}
For more information about relations, please see the Neon Dashboard User Guide.
mapLayers - (Optional) An object that maps Map visualization names to arrays of map layer configuration objects each with the following properties:
- name
- database
- table
- type
- active
- limit
- latitudeMapping
- longitudeMapping
- colorBy
- sizeBy
- defaultColor
- gradient
- popupFields
- sourceLatitudeMapping
- sourceLongitudeMapping
- targetLatitudeMapping
- targetLongitudeeMapping
- nodeWeightMapping
- lineWeightMapping
- nodeColorBy
- lineColorBy
- nodeDefaultColor
- lineDefaultColor
Please see Map Layer Object Options for details.
lineCharts - (Optional) An object that maps Line Chart visualization names to arrays of line chart configuration objects each with the following properties:
- database
- table
- active
- name
- xAxis
- aggregation
- yAxis
- category
Please see Line Chart Object Options for details.
mapConfig - (Optional) An object that maps Map visualization names to configuration options each with the following properties:
- bounds
Please see Map Configuration Options for details.
linkyConfig - (Optional) Link configuration options for with the following properties:
- mentions
- hashtags
- urls
- linkTo
Please see Linky Configuration Options for details.
options - (Optional) Miscellaneous configuration options with the following properties:
- colorMaps
- mapBaseLayer
- checkForCoordinateValidation
Please see Option Object Options for details.
name - The name of the database.
prettyName - (Optional) A label for the database displayed in the UI. Default: The database name.
tables - An array of table/collection objects each with the following properties:
- name
- prettyName
- fields
- mappings
- enableRowSelection
Please see Table Object Options for details. Tables will appear in dropdown boxes in the oreder they are listed.
name - The name of the table.
prettyName - (Optional) A label for the table displayed in the UI. Default: The table name.
fields - (Optional) An array of field objects with the following properties:
- columnName
- prettyName
- hide
Please see Field Object Options for details. Fields will appear the the Data Table in the order they are listed.
mappings - (Optional) A mapping of specific configuration properties to field names. These fields will be used by any instance of the specified visualization unless that instance has an overriding field data binding. The following properties are available:
- date - The date and time field used by the Timeline, Ops Clock, Line Chart, Graph, Filter Builder, News Feed, and Map. If a record only has a date without time information, 12:00 AM will be assumed.
- latitude - The latitude field used by the Map.
- longitude - The longitude field used by the Map.
- line_category - The group field used by the Line Chart.
- bar_x_axis - The X-axis field used by the Bar Chart.
- y_axis - The Y-axis field used by the Bar Chart and Line Chart.
- x_attr - The X-axis field used by the Scatter Plot.
- y_attr - The Y-axis field used by the Scatter Plot.
- color_by - The coloring field used by the Map.
- size_by - The sizing field used by the Map.
- nodeColorBy - The nodes coloring field used in the map.
- lineColorBy - The lines coloring field used in the map.
- sort_by - The sorting field used by the Data Table.
- count_by - The field used by the Aggregation Table.
- tags - The tag field used by the Text Cloud.
- graph_nodes - The field that contains the Graph node identifier that the record belongs to.
- graph_links - The field that contains the Graph node identifier(s) that the record links to. This can either be a string or an array of strings.
- graph_node_name - The nodes name field used by the Graph.
- graph_link_name - The links name field used by the Graph.
- graph_node_size - The nodes size field used by the Graph.
- graph_link_size - The links size field used by the Graph.
- graph_flag - The flag field used by the Graph.
- graph_flag_mode - The flag mode used by the Graph. Options: result, linked, or all.
- graph_tooltip_id_label - A label for the id field in the tooltip used by the Graph.
- graph_tooltip_data_label - A label for the data field in the tooltip used by the Graph.
- graph_tooltip_name_label - A label for the name field in the tooltip used by the Graph.
- graph_tooltip_size_label - A label for the size field in the tooltip used by the Graph.
- graph_tooltip_flag_label - A label for the flag field in the tooltip used by the Graph.
- graph_tooltip_source_name_label - A label for the source name field in the tooltip used by the Graph.
- graph_tooltip_target_name_label - A label for the target name field in the tooltip used by the Graph.
- graph_tooltip_source_size_label - A label for the source size field in the tooltip used by the Graph.
- graph_tooltip_target_size_label - A label for the target size field in the tooltip used by the Graph.
- newsfeed_name - A name for the news feed used by the News Feed and Graph.
- newsfeed_type - The type of news feed used by the News Feed and Graph.
- newsfeed_text - The text field used by the Graph.
- newsfeed_author - The nodes name field used by the Graph.
-
allCoordinates - A list of objects containing mappings of all coordinate fields used by the map upon row selection in the Data Table. Each mapping has the following properties:
- latitude - A latitude field
- longitude - A longitude field
enableRowSelection - (Optional) Whether selecting a row in the Data Table results in a new point to be added to the Map that displays the location. Default: false.
columnName - The name of the field in the table.
prettyName - (Optional) A label for the field displayed in the UI. Default: The field name.
hide - (Optional) If true, will hide the field in the Data Table. Default: false.
bounds - The starting bounds (the zoom and position of the map) for each Map using the latitude and longitude coordinates set in the following properties:
- top - Number between -90 and 90.
- bottom - Number between -90 and 90.
- left - Number between -180 and 180.
- right - Number between -180 and 180.
If no bounds are configured, each map will set its starting bounds to the minimum required to display all of its current data.
name - (Optional) A label for the map layer displayed in the UI. Default: The map layer table.
database - The name of the database.
table - The name of the table.
type - The type of map layer:
- points
- heatmap
- cluster
- nodes and arrows
active - (Optional) Whether filtering on this map layer starts enabled. Filtering on map layers can be enabled or disabled through a Map's options menu. If false, a layer will not restrict its data to a user-selected geo box. Default: false.
limit - (Optional) A number for the data record limit on all queries for this map layer because quieres resulting in too many data records can cause the dashboard to crash. Default: 1000.
latitudeMapping - (Optional) The name of the latitude field. Default: latitude.
longitudeMapping - (Optional) The name of the longitude field. Default: longitude.
colorBy - (Optional) The name of the field used to color points on this map layer. Used by points layer and cluster layers. Its recommended that only fields with a small set of discrete values be used. Default: All points are the same color.
sizeBy - (Optional) The name of the fields used to size points on the map layer. Only used by points and heatmap layers. Its recommended that only numeric fields be used. Default: All points are the same size.
defaultColor - (Optional) The default color of points on the points and cluster layers. Default: #00ff00.
gradient - (Optional) Whether a gradient is applied to a points layer. If true, the points are colored in a gradient from red to blue based on the date specified in the sizeBy property. Default: false.
popupFields - (Optional) An array of fields to display when a cluster is selected. Default: The number of points in the cluster.
sourceLatitudeMapping - (Optional) The name of the source latitude field used on a node layer. Default: from.latitude.
sourceLongitudeMapping - (Optional) The name of the source longitude field used on a node layer. Default: from.longitude.
targetLatitudeMapping - (Optional) The name of the target latitude field used on a node layer. Default: to.latitude.
targetLongitudeMapping - (Optional) The name of the target longitude field used on a node layer. Default: to.longitude.
nodeWeightMapping - (Optional) The name of the weight field used on a node layer to determine the size of the nodes. Default: wgt.
lineWeightMapping - (Optional) The name of the weight field used on a node layer to determine the size of the lines. Default: wgt.
nodeColorBy - (Optional) The name of the field that is used on a node layer to color nodes by.
lineColorBy - (Optional) The name of the field used on a node layer to color lines by.
nodeDefaultColor - (Optional) The default node color used on a nodes layer.
lineDefaultColor - (Optional) The default line color used on a nodes layer.
Example:
"lineCharts": {
"lineChart1": [
{
"database": "test",
"table": "earthquakes",
"active": true,
"name": "Quakes",
"xAxis": "time",
"aggregation": "sum",
"yAxis": "mag",
"category": "magType"
},{
"database": "test",
"table": "twitter",
"active": false,
"name": "twitter",
"xAxis": "created_at",
"aggregation": "count"
}
],
"lineChart2": [
{
"database": "test",
"table": "earthquakes",
"active": false,
"name": "Earthquakes",
"xAxis": "time",
"aggregation": "count",
"category": "magType"
}
]
}
database - The name of the database.
table - The name of the table.
active - (Optional) Whether filtering on this line chart starts enabled. Filtering on line charts can be enabled or disabled through a Line Chart visualization options menu. If false, a line chart won't affect other visualization's filters. Default: true.
name - (Optional) A label for the line chart displayed in the UI. Default: The map layer table.
xAxis - The name of the x-axis field used to draw the line chart.
aggregation - The line chart aggregation type. Options:
- count
- sum
- average
- minium
- maximum
yAxis - The line chart y-axis field used to draw the line chart. This field is optional if the aggregation is "count".
category - (Optional) The category field used to draw groups on the line chart.
mentions - (Optional) Whether mentions should be linked. Default: false.
hashtags - (Optional) Whether hashtags should be linked. Default: false.
urls - (Optional) Whether urls should be linked. Default: false.
linkTo - (Optional) Where mentions and hashtags should link to. Available options are:
- github
Default: twitter
colorMaps - (Optional) A list of objects containing color mappings for specific fields in a database. Each item contains a database name with an object containing table names. Each table name contains a list of fields in that table with a list of field values to colors. These values will be used to color points in the map on the points layer if the field is defined in colorBy with the correct database and table name. Any missing field values will use the defaultColor property. Example:
{
"datasets": [{
"options": {
"colorMaps": {
"myDatabase": {
"myTable": {
"myField": {
"fieldA": "#123456",
"fieldB": "#654321"
}
}
}
}
}
}]
}
mapBaseLayer - (Optional) The Map's base layer configuration options with the following properties:
- color: dark or light
- protocol: http or https
Default: light and http
checkForCoordinateValidation - (Optional) The validation check the Map should apply to coordinates using the following properties:
- valid_numbers: Check for numbers within the valid coordinate range. Use this if some records have nulls, strings, or out of range numbers for latitude/longitude.
- null_values: Check for null coordinates only. This is generally slower than valid_numbers. The only reason to use this is that on systems that have indexes to speed up range queries (e.g., MongoDB), the valid_numbers check will return the results in order by latitude/longitude. If the map limit is less than the number of records that match the current filter, this will cause the points to fill the map from the bottom or top. If you aren't experiencing this problem, then valid_numbers will probably give better performance.
Example:
{
"name": "Map",
"icon": "img/visualizations/Map64.png" ,
"type": "map",
"sizeX": 4,
"sizeY": 4,
"minSizeX": 2,
"minSizeY": 2,
"bindings": {}
}
name - (Optional) A label for the visualization displayed in the "Add Visualization" popup.
icon - (Optional) The file path to the icon for the visualization displayed in the "Add Visualization" popup.
type - The type of visualization:
- Aggregation Table: count-by
- Bar Chart: barchart
- Data Table: query-results-table
- Gantt Chart: gantt-chart
- Filter Builder: filter-builder
- Line Chart: linechart
- Map: map
- Network Graph: directed-graph
- News Feed: newsfeed
- Ops Clock: circular-heat-form
- Scatter Plot: plotly-graph
- Suburst Chart: sunburst
- Text Cloud: tag-cloud
- Timeline: timeline-selector
sizeX - The starting width of the visualization. By default, the width is divided into 6 columns. Therefore, a visualization with a sizeX of 2 would have a width of 1/3rd of the screen.
sizeY - The starting height of the visualization.
minSizeX - (Optional) The minimum width of the visualization. Note that most visualizations do not support a width of less than 2. Default: 2.
minSizeY - (Optional) The minimum height of the visualization. Note that most visualizations do not support a width of less than 2. Default: 2.
bindings - (Optional) The data bindings used by the visualization. Whenever the visualization is created - either by selecting a dataset (in the layouts property) or through the "Add Visualization" popup (in the visualizations property) - it will use its data bindings to set is starting database, table, and fields. If no data binding is set for an option, the visualization will use the first option in the appropriate dropdown. We suggest that you only configure bindings for visualization objects in the layouts property.
The following bindings are available:
- bind-title - The title displayed in the UI for the visualization
- bind-database - The database
- bind-table - The table
- bind-date-field - The date field
- bind-granularity - The date granularity for the Line Chart or Timeline
- bind-x-axis-field - The x-axis field for the Bar Chart or Scatter Plot
- bind-y-axis-field - The y-axis field for the Bar Chart or Scatter Plot
- bind-group-field - The group field for the Aggregation Table
- bind-aggregation - The aggregation type for the Aggregation Table or Bar Chart
- bind-aggregation-field - The secondary aggregation field for the Aggregation Table
- bind-tag-field - The tag field for the Text Cloud
- bind-limit - The data record limit
- bind-filter-field - The unshared filter field
- bind-filter-value - The unshared filter value
- bind-feed-name - The name of the News Feed (for the Network Graph, the name of the News Feed to update with node selections)
- bind-feed-type - The type of the News Feed (for the Network Graph, the type of the News Feed to update with node selections)
- bind-primary-title-field - The primary title field for the News Feed
- bind-secondary-title-field - The secondary title field for the News Feed
- bind-content-field - The content field for the News Feed
- bind-config - A name for a Line Chart or Map corresponding to its lineCharts or mapLayers configuration
- bind-start-field - The start field for the Gantt Chart
- bind-end-field - The end field for the Gantt Chart
- bind-color-field - The color field for the Gantt Chart
- bind-row-title-field - The row title field for the Gantt Chart
- bind-group-fields - A string of group fields separated by a comma for the Gantt Chart or Sunburst Chart
- bind-selected-groups - A string of selected group fields separated by a comma for the Gantt Chart
- override-start-date - The start date
- override-end-date - The end date
- graph-type - The type of Scatter Plot (scatter, heatmapScatter, histogramScatter)
- sub-type - The line or marker type of the Scatter Plot (lines, markers, lines+markers)
- bind-value-field - The field to use for the total value for the Sunburst Chart.
- bind-arc-value - The value to display of the last arc in the Suburst Chart. Options: count or total. Defaults to count.
- bind-count-field - Deprecated. Please use bind-group-field instead.
- bind-head-field - Deprecated. Please use bind-primary-title-field instead.
- bind-name-field - Deprecated. Please use bind-secondary-title-field instead.
- bind-text-field - Deprecated. Please use bind-content-field instead.
- limit-count - Deprecated. Please use bind-limit instead.
- bind-attr-x - Deprecated. Please use bind-x-axis-field instead.
- bind-attr-y - Deprecated. Please use bind-y-axis-field instead.
All visualizations except the Filter Builder, Line Chart, Map, Network Graph, and Scatter Plot use the bind-database and bind-table bindings. All visualizations except the Filter Builder, Gantt Chart, Line Chart, Map, and Scatter Plot use the bind-title binding. The following visualizations use the listed bindings:
- Aggregation table: bind-group-field, bind-aggregation, bind-aggregation-field, bind-filter-field, bind-filter-value, bind-limit
- Bar Chart: bind-x-axis-field, bind-y-axis-field, bind-aggregation, bind-limit
- Gantt Chart: bind-row-title-field, bind-start-field, bind-end-field, bind-color-field, bind-group-fields, bind-selected-groups
- Line Chart: bind-config, bind-granularity
- Map: bind-config
- Network Graph: bind-feed-name, bind-feed-type
- News Feed: bind-date-field, bind-primary-title-field, bind-secondary-title-field, bind-content-field, bind-feed-name, bind-feed-type, bind-filter-field, bind-filter-value
- Ops Clock: bind-date-field
- Scatter Plot: graph-type, sub-type, bind-x-axis-field, bind-y-axis-field, bind-limit, bind-filter-field
- Sunburst: bind-group-fields, bind-value-field, bind-arc-value
- Text Cloud: bind-tag-field, bind-filter-field, bind-filter-value
- Timeline: bind-date-field, bind-granularity, override-start-date, override-end-date
gridsterColumns - (Optional) The width of the Neon Dashboard in gridster units. Default: 6.
gridsterMargins - (Optional) The margins for the visualizations in the Neon Dashboard in pixels. Default: 10.
hideNavbarItems - (Optional) Whether to hide the buttons in the navigation bar, including the “Choose Dataset” and “Add Visualization” buttons. Default: false.
hideAdvancedOption - (Optional) Whether to hide all database, table, and field selection dropdowns in the options menus for all visualizations. Default: false.
hideAddVisualizationsButton - (Optional) Whether to hide the "Add Visualizations" button. Default: false.
hideErrorNotifications - (Optional) Whether to hide the error notification popups for all visualizations . Default: false.
hideHeaders - (Optional) Whether to hide the headers containing the table name and options menu for all visualizations. Default: false.
hideFilterStatusTray - (Optional) Whether to hide the filter status menu in the navigation bar. Default: false.
hideCloseButton - (Optional) Whether to hide the close button for all visualizations. Default: false.
showVideoOnLoad - (Optional) Whether to show the help video when a page is loaded. Default: false.
showImport - (Optional) Whether to enable import in the navigation bar options menu. Default: false.
showExport - (Optional) Whether to enable export in the navigation bar options menu and in the options menu for all visualizations. Default: true.
translationKeys - (Optional) An object containing pairs of translation API names to an API key. The following APIs are currently supported:
Example:
{
"externalServices": {
"configList": ["./config/services.json", "http://1.2.3.4:8080/config"],
"imageDirectory": "./images",
"fileProperties": {
"url": "url",
"name": "name",
"image": "image",
"services": "services"
},
"servicesMappings": {
"bounds": "geobounds",
"date": "daterange",
"point": "geoloc",
"tags": "hashtag",
"custom_number_1": "id",
"custom_string_1": "user"
},
"argsMappings": {
"bounds": {
"geobounds": {
"lat0": "minLat",
"long0": "minLon",
"lat1": "maxLat",
"long1": "maxLon"
}
},
"date": {
"daterange": {
"start": "startDate",
"end": "endDate"
}
},
"point": {
"geoloc": {
"lat": "latitude",
"long": "longitude"
}
},
"tags": {
"hashtag": "tags"
},
"custom_number_1": {
"id": "custom_number_1"
},
"custom_string_1": {
"user": "custom_string_1"
}
}
}
}
configList - The list of JSON configuration objects that contain registries of external intents-like services. These objects can either be read from JSON files available through a local or remote web server or be returned in responses from HTTP requests.
imageDirectory - The directory containing the images for the applications used in the links. This directory can be located on either a local or remote web server.
fileProperties - (Optional) An object containing the names of specific properties used for the applications in the JSON configuration:
- url: The name of the URL field containing the base URL of the application. Default: url
- name: The name of the application. Default: name
- image: The name of the image field containing the image for the application. Default: image
- services: The name of the object containing the list of available services for the application.
Example JSON configuration object for external services:
{
"Google Maps": {
"url": "https://www.google.com/maps",
"name": "Google Maps",
"image": "google-maps.png",
"services": {
"geoloc": "@{{geoloc.lat}},{{geoloc.long}},12z",
"geobounds": "@{{geobounds.lat0}},{{geobounds.long0}},12z"
}
},
"Twitter": {
"url": "https://twitter.com",
"name": "Twitter",
"image": "twitter.png",
"services": {
"hashtag": "hashtag/{{hashtag}}",
"user": "{{user}}"
}
},
"My Application": {
"url": "http://my-application",
"name": "My Application",
"image": "my-application.png",
"services": {
"daterange": "?date={{daterange.start}},{{daterange.end}}",
"geoloc": "?location={{geoloc.lat}},{{geoloc.long}}",
"geobounds": "?bounds={{geobounds.lat0}},{{geobounds.long0}},{{geobounds.lat1}},{{geobounds.long1}}",
"hashtag": "?hashtag={{hashtag}}",
"id": "?id={{id}}",
"user": "?user={{user}}"
},
}
}
servicesMappings - An object containing Neon mappings and their equivalents from the "services" in the JSON configuration. Note that multiple Neon mappings can refer to the same service.
argsMappings - An object containing Neon mappings and the data expected by their equivalents from the "services" in the JSON configuration. The data may be an object containing the service argument and its equivalent Neon mapping:
{
"externalServices": {
"argsMappings": {
"tags": {
"hashtag": "tags"
}
}
}
}
Alternatively, the data may be an object containing the service argument and another object containing properties of the service argument and their equivalent Neon mappings:
{
"externalServices": {
"argsMappings": {
"date": {
"daterange": {
"start": "startDate",
"end": "endDate"
}
}
}
}
}
Each table can specify the Neon mappings for its own columns; please see Table Object Options for details. The following mappings are automatically derived from other Neon mappings and thus do not have to be specified in the Neon configuration file:
- startDate - Derived from date
- endDate - Derived from date
- minLat - Derived from latitude
- maxLat - Derived from latitude
- minLon - Derived from longitude
- maxLon - Derived from longitude
loggingUrl - (Optional) The url of the User-ALE logging server. Default: http://192.168.1.100
toolName - (Optional) The name of your tool. Default: Neon Dashboard
toolVersion - (Optional) The version of your tool. No default.
elementGroups - (Optional) List of element groups used. Default:
[
"top",
"map_group",
"table_group",
"chart_group",
"query_group",
"graph_group"
]
workerUrl - (Optional) File location of the User-ALE worker file. Default: lib/user-ale/js/userale-worker.js
debug - (Optional) Whether to log messages to the console. Default: false.
sendLogs - (Optional) Whether to send logs to the loggingUrl. Default: false.
enableOpenCpu - (Optional) Whether to enable OpenCPU. Default: false.
enableLogging - (Optional) Whether to enable logging. Default: false.
useAlerts - (Optional) Whether to use alerts. Default: false.
enableAnomalyDetection - (Optional) Whether to enable anomaly detection. Default: false.
enableStl2 - (Optional) Whether to enable STL2 . Default: false.
enableMmpp - (Optional) Whether to enable MMPP. Default: false.
url - The OpenCPU url.
guide - (Optional) File location of a guide to link to in the navigation bar help menu.
video - (Optional) Location of a video to link to in the navigation bar help menu.
datasets - (Optional) List of JSON file locations containing an object with a dataset property that has the same options as Dataset Object Options.
layouts - (Optional) List of JSON file locations containing other layouts. Each file has the following properties:
- name: The name of the layout
- layout: List of visualization objects with the same properties as Visualization Object Options. Example:
{
"name": "earthquakes",
"layout": [{
"sizeX": 2,
"sizeY": 2,
"type": "timeline-selector",
"bindings": {
"bind-date-field": "'time'"
}
}, {
"sizeX": 4,
"sizeY": 2,
"type": "query-results-table"
}]
}