Visualize Spatiotemporal Datasets

You can visualize spatiotemporal datasets using the Cesium Timeline widget.

The following sections provide more information on the Cesium Timeline widget and the supported visualizations.

Overview of the Cesium Timeline Widget

Spatial Studio provides a new standalone Cesium Timeline widget.

The Cesium Timeline widget in Spatial Studio provides the following capabilities:

The following figure shows the Cesium Timeline Widget on a map visualization in Spatial Studio.

Description of the illustration cesium_timeline_widget.png

The key concepts of the Cesium Timeline are as follows:

Related Topics

Configure Cesium Timeline Settings

You can configure custom settings for the Cesium timeline.

Perform the following steps to configure the Cesium Timeline settings in your map visualization.

The instructions assume that you have a project linked to a spatiotemporal dataset and the project is opened on your Active Project page.

  1. Click the Settings icon in your map tool bar.

  2. Switch ON the Show timeline toggle and click OK.

    The Cesium Timeline widget appears at the bottom of the map visualization canvas.

  3. Click timeline_settings_icon on the timeline to configure the Cesium timeline settings.

    The Timeline Settings dialog opens as shown:

    Description of the illustration timeslider_settings.png

    1. Select the Start Time and Stop Time to set the timeline range.

    2. Enter or select a multiplier value from the Type or select Multiplier value list box.

      You can use a preset (Second, Minutes, Hours, Days, Weeks, Month, Year) multiplier or type a value such as 15 or 15x.

    3. Select the Display Time Zone in which you want the Cesium timeline to display its current time and timeline labels.

    4. Optionally, switch ON the Autohide time of day.

      If you opt to autohide time of day, then the time values from the timeline labels are hidden if the timeline range selected is greater than a week.

    5. Click Apply.

About Map Layers and the Timeline

Learn more about the spatiotemporal map layers and the Cesium timeline.

Visualize Live Moving Objects Dataset

You can visualize live moving objects on a map in Spatial Studio.

The following instructions assume that you have enabled spatiotemporal for such a dataset and the dataset is already added to the project in the Active Project page. See Configure Spatiotemporal for Live Moving Objects Dataset for more information.

  1. Click the Visualizations tab on the left pane in the Active Project page.

    This lists the various visualization options.

  2. Click and drag Map from the list to the visualization window on the right to create a map visualization.

    A default base map is displayed with no data visualization layers.

  3. Click the Data tab on the left pane in the Active Project page.

    This lists all the Datasets that are loaded for the project.

  4. Click and drag the desired spatiotemporal dataset from the list to the map view on the right.

    Two map layers belonging to the dataset are created on the map. The second layer representing the trails of the moving object is added automatically in Spatial Studio. See Characteristics of Spatiotemporal Map Layers for Moving Objects Dataset for more information on the two map layers.

  5. Click the Settings icon in your map tool bar.

  6. Switch ON the Show timeline toggle and click OK.

    The Cesium timeline widget appears at the bottom of the map visualization canvas. However, the timeline is not operational at this step.

  7. Click Menu Icon against the primary layer in the Data tab of the Layers list and click Add to Timeline,

    Adding a map layer to the timeline will point to the current UTC time and the layer is now listening to the timeline events. However, the timeline is not operational at this step. Optionally, repeat this step to add multiple layers (of different spatiotemporal datasets) to the timeline and listen to its events.

  8. Configure animation for the map layer by following the steps in Configure Animation for Moving Objects Dataset.

    Description of the illustration viz_mov_obj_ds.png

  9. Select Zoom Timeline to Range in the context menu of the map layer.

    The timeline is refocused on current UTC time.

  10. Optionally, configure custom Start Time, Stop Time, Multiplier, and so on from the timeline settings. You can also use the Cesium timeline controls and make the current time pointer slide to a different timeframe.

  11. Optionally, select Remove from Timeline in the context menu of the map layer if you wish the map layer to stop listening to the Cesium timeline.

Visualize Live and Non-Moving Objects Dataset

You can visualize a spatiotemporal dataset having ongoing inserts of real-time data, but the locations of the data entities do not change.

The following instructions assume that you have enabled spatiotemporal for such a dataset and the dataset is already added to the project in the Active Project page. See Configure Spatiotemporal for Live and Non-Moving Objects Dataset for more information.

  1. Click the Visualizations tab on the left pane in the Active Project page.

    This lists the various visualization options.

  2. Click and drag Map from the list to the visualization window on the right to create a map visualization.

    A default base map is displayed with no data visualization layers.

  3. Click the Data tab on the left pane in the Active Project page.

    This lists all the Datasets that are loaded for the project.

  4. Click and drag the desired spatiotemporal dataset from the list to the map view on the right.

    Two map layers belonging to the dataset are created on the map.

  5. Click the Settings icon in your map tool bar.

  6. Switch ON the Show timeline toggle and click OK.

    The Cesium Timeline widget appears at the bottom of the map visualization canvas. However, the timeline is not operational at this step.

  7. Click Menu Icon against the primary layer in the Data tab of the Layers list and click Add to Timeline.

  8. Select Configure Animation from the context menu of the map layer.

  9. Switch ON Animate layer based on automatic dataset refresh.

    The dataset animates with the Cesium clock events.

  10. Specify Time between auto refreshes to indicate the frequency of data refresh from the backend. This configuration also determines the smoothness and speed of the temporal animation.

    Also, note the following:

    • Spatial Studio displays a default frequency value which is same as the Data Change Rate value configured on the Spatiotemporal dataset used for the visualization.

    • Only one dataset layer for the geometry animates (attributes change) as per the Cesium clock’s current time (which points to the present UTC time value) and the multiplier value (default is 1x). Since the dataset is a streaming entity it will not have data ahead of time. Hence you must not change the default Cesium clock values. If you expect the data to be updated every x minutes, then configure Time between auto refreshes to x minutes, but do not change the Cesium timeline range or the multiplier value.

  11. Select Zoom Timeline to Range in the context menu of the map layer to make the timeline reset to current clock time and a 1x multiplier.

    Upon reaching the set end time, the timeline will keep moving ahead and will not loop back.

  12. Optionally, select Remove from Timeline in the context menu of the map layer if you wish the map layer to stop listening to the Cesium timeline.

Visualize Non-Live Moving Objects Dataset

You can visualize moving objects with historic timestamp values on a map in Spatial Studio.

The following instructions assume that you have enabled spatiotemporal for such a dataset and the dataset is already added to the project in the Active Project page. See Configure Spatiotemporal for Non-Live Moving Objects Dataset for more information.

  1. Click the Visualizations tab on the left pane in the Active Project page.

    This lists the various visualization options.

  2. Click and drag Map from the list to the visualization window on the right to create a map visualization.

    A default base map is displayed with no data visualization layers.

  3. Click the Data tab on the left pane in the Active Project page.

    This lists all the Datasets that are loaded for the project.

  4. Click and drag the desired spatiotemporal dataset from the list to the map view on the right.

    Two map layers belonging to the dataset are created on the map. The second layer representing the trails of the moving object is added automatically in Spatial Studio. See Characteristics of Spatiotemporal Map Layers for Moving Objects Dataset for more information on the two map layers.

  5. Click the Settings icon in your map tool bar.

  6. Switch ON the Show timeline toggle and click OK.

    The Cesium Timeline widget appears at the bottom of the map visualization canvas. However, the timeline is not operational at this step.

  7. Click Menu Icon against the primary layer in the Data tab of the Layers list and click Add to Timeline.

    The map layer gets added to the timeline and the timeline will range from minimum value to maximum value of the timestamp column. the current time will point to the min value of the timestamp column and the layer is now listening to the timeline events. However, the timeline is not operational at this step. Optionally, repeat this step to add multiple layers (of different spatiotemporal datasets) to the timeline.

  8. Configure animation for the map layer by following the steps in Configure Animation for Moving Objects Dataset.

  9. Select Zoom Timeline to Range in the context menu of the map layer.

    The timeline is refocused to range from minimum value to maximum value of the timestamp column and current time will point to the minimum value of the timestamp column. This acts as a looping mechanism for a historic dataset.

  10. Optionally, configure custom Start Time, Stop Time, Multiplier, and so on from the timeline settings. You can also use the Cesium timeline controls and make the current time pointer slide to a different timeframe.

  11. Optionally, select Remove from Timeline in the context menu of the map layer if you wish the map layer to stop listening to the Cesium timeline.

Visualize Non-Live and Non-Moving Objects Dataset

You can visualize a spatiotemporal dataset that simply contains different timestamp values in each row which are not grouped by any entity ids.

The following instructions assume that you have enabled spatiotemporal for such a dataset and the dataset is already added to the project in the Active Project page. See Configure Spatiotemporal for Non-Live and Non-Moving Objects Dataset for more information.

  1. Click the Visualizations tab on the left pane in the Active Project page.

    This lists the various visualization options.

  2. Click and drag Map from the list to the visualization window on the right to create a map visualization.

    A default base map is displayed with no data visualization layers.

  3. Click the Data tab on the left pane in the Active Project page.

    This lists all the Datasets that are loaded for the project.

  4. Click and drag the desired spatiotemporal dataset from the list to the map view on the right.

    A single map layer is created on the map.

  5. Click the Settings icon in your map tool bar.

  6. Switch ON the Show timeline toggle and click OK.

    The Cesium Timeline widget appears at the bottom of the map visualization canvas. However, the timeline is not operational at this step.

  7. Click Menu Icon against the primary layer in the Data tab of the Layers list and click Add to Timeline.

    The map layer gets added to the timeline and the timeline will range from minimum value to maximum value of the timestamp column. The current time will point to the minimum value of the timestamp column and the layer is now listening to the timeline events.

    Also, the filtering configured for the spatiotemporal settings will automatically be applied and the map layer will be filtered as per the Cesium clock current time. For example, if the Cesium clock current time is Monday, May 22, 2023 5:13 PM and the configured time unit for filtering is month, then the map visualization will show all the geometries that have the timestamps between May 1, 2023 and May 31, 2023.

    The multiplier of the timeline matches the filtering time unit selected. However, you can also change the time unit at which the dataset is currently being filtered (see Configure Spatiotemporal for Non-Live and Non-Moving Objects Dataset).

    Description of the illustration viz_filtering_ds.png

  8. Select Zoom Timeline to Range in the context menu of the map layer.

    The timeline is refocused to range from minimum value to maximum value of the timestamp column and the current time will point to the minimum value of the timestamp column. This acts as a looping mechanism for a historic dataset.

  9. Optionally, select custom Start Time, Stop Time, Multiplier, and so on from the timeline settings. You can also use the Cesium timeline controls and make the current time pointer slide to a different time frame.

  10. Optionally, select Remove from Timeline in the context menu of the map layer if you wish the map layer to stop listening to the Cesium timeline.

Visualize Spatiotemporal Data in OGC WMS Datasets

You can visualize OGC WMS datasets that contain spatiotemporal data.

The following instructions assume that you have enabled spatiotemporal for such a dataset and the dataset is already added to the project in the Active Project page. See Configure Spatiotemporal for OGC WMS Datasets for more information.

  1. Click the Visualizations tab on the left pane in the Active Project page.

    This lists the various visualization options.

  2. Click and drag Map from the list to the visualization window on the right to create a map visualization.

    A default base map is displayed with no data visualization layers.

  3. Click the Data tab on the left pane in the Active Project page.

    This lists all the Datasets that are loaded for the project.

  4. Click and drag the desired spatiotemporal dataset from the list to the map view on the right.

    A single map layer is created on the map.

  5. Click the Settings icon in your map tool bar.

  6. Switch ON the Show timeline toggle and click OK.

    The Cesium Timeline widget appears at the bottom of the map visualization canvas. However, the timeline is not operational at this step.

  7. Click Menu Icon against the map layer in the Data tab of the Layers list and select Add to Timeline.

    The map layer gets added to the timeline. Although the timeline is now listening to the timeline events, it is still not operational.

  8. Select Configure Animation from the context menu of the map layer.

    The animation configuration dialog opens as shown:

    Description of the illustration configure_animation_ds.png

  9. Switch ON Animate layer based on automatic dataset refresh.

    The dataset animates with the Cesium clock events.

    The dataset will poll the WMS service to fetch the images as per the time value under the Cesium clock current time.

    Description of the illustration wms_spatio_temporal_ds_viz.png

  10. Specify Time between auto refreshes to indicate the frequency of data refresh from the backend. This configuration also determines the smoothness and speed of the temporal animation.

    Also, note the following:

    • Spatial Studio displays a default value of 2 seconds for WMS datasets. The effective refresh rates depend on how fast images are fetched from the respective WMS service. Empirically, for WMS data, any data change rate less than 2 seconds is not sufficient to retrieve image and refresh the tiles. It can cause incomplete image loading before the new refresh, or the visualization may remain stuck in refresh state.

    • The parameter ignores all the tick events from the timeline if the Cesium clock current time is less than previousRefreshTime + x seconds (or any other time unit). For example, if a dataset is supposed to refresh every 30 seconds, then configure this value in Time between auto refreshes so that even if the Cesium clock continues to throw tick events for all layers, this layer will ignore any such events.

  11. Specify a Time Unit.

  12. Optionally, select custom Start Time, Stop Time, Multiplier, and so on from the timeline settings. You can also use the Cesium timeline controls and make the current time pointer slide to a different time frame.

    Note: Zoom Timeline to Range is disabled for an OGC WMS dataset. This is because each WMS dataset may comprise more than one image layers and it will be inaccurate to choose a time range for any one of these layers automatically. Therefore, use the Cesium timeline settings (see Configure Cesium Timeline Settings) to manually set the appropriate range of the timeline for the specific image layer that you wish to animate.

  13. Optionally, select Remove from Timeline in the context menu of the map layer if you wish the map layer to stop listening to the Cesium timeline.

Visualize GeoJSON URL Datasets with Spatiotemporal Data

You can visualize GeoJSON URL based datasets that contain spatiotemporal data.

The following instructions assume that you have enabled spatiotemporal for such a dataset and the dataset is already added to the project in the Active Project page. See Configure Spatiotemporal for GeoJSON URL Datasets for more information.

  1. Click the Visualizations tab on the left pane in the Active Project page.

    This lists the various visualization options.

  2. Click and drag Map from the list to the visualization window on the right to create a map visualization.

    A default base map is displayed with no data visualization layers.

  3. Click the Data tab on the left pane in the Active Project page.

    This lists all the Datasets that are loaded for the project.

  4. Click and drag the desired spatiotemporal dataset from the list to the map view on the right.

    A single map layer is created on the map.

  5. Click Menu Icon against the map layer in the Data tab of the Layers list and select Configure Animation.

    Note: GeoJSON URL based datasets are not dependent on the time values represented by the Cesium Timeline. They are just required to refresh periodically and therefore you need not enable the Cesium Timeline for such datasets.

  6. Switch ON Animate layer based on automatic dataset refresh.

  7. Specify Time between auto refreshes to indicate the frequency of data refresh from the backend. This configuration also determines the smoothness and speed of the temporal animation.

    The GeoJSON URL map layer is set to refresh periodically based on this configured interval value.

Configure Animation for Moving Objects Dataset

You can animate a spatiotemporal map layer of a moving objects dataset based on Cesium Timeline events.

The instructions assume that the spatiotemporal map layer is already added to the Cesium Timeline.

  1. Click Menu Icon against the primary layer in the Data tab of the Layers list.

    The context menu of the map layer displays the following options:

    Description of the illustration configure_animation_menu.png

  2. Select Configure Animation.

    The animation settings for the map layer opens.

  3. Switch ON Animate layer based on automatic dataset refresh.

    The dataset animates with the Cesium clock events.

  4. Specify Time between auto refreshes to indicate the frequency of data refresh from the backend. This configuration also determines the smoothness and speed of the temporal animation.

    Also, note the following:

    • Spatial Studio displays a default frequency value which is same as the Data Change Rate value configured on the Spatiotemporal dataset used for the visualization.

    • All the map layers added to the timeline can individually have their own refresh or animation intervals.

    • The parameter ignores all the tick events from the timeline if the Cesium clock current time is less than previousRefreshTime + x seconds (or any other time unit). For example, if a dataset is supposed to refresh every 30 seconds, then configure this value in Time between auto refreshes so that even if the Cesium clock continues to throw tick events for all layers, this layer will ignore any such events.

  5. Specify a Time Unit.

  6. Specify How much data to load, the trail length of your moving object. A trail length value of N indicates that Spatial Studio must fetch the recent N units (unit value as specified in the following step) of data of the moving object during every refresh.

    Tip: If the underlying database table or view contains millions of records, you can limit the map animation to display only the most recent N units of data as configured in Trail Length.

    Note that Spatial Studio displays a default trail length value which is 15 times the Data Change Rate value configured on the Spatiotemporal dataset and is rounded to the nearest integer.

  7. Specify a Time Unit for the trail length.

    The animation settings are configured and you can view the animation of moving objects on the map.

Note: You can choose a symbol and color for your moving object. However, ensure that the symbol you select adheres to the conditions explained in Characteristics of Spatiotemporal Map Layers for Moving Objects Dataset.

Characteristics of Spatiotemporal Map Layers for Moving Objects Dataset

This section describes the distinct characteristics of the primary and secondary map layers when visualizing a spatiotemporal dataset containing moving objects.