import ChronologicalLayoutSettings from "@arcgis/core/linkChart/ChronologicalLayoutSettings.js";const ChronologicalLayoutSettings = await $arcgis.import("@arcgis/core/linkChart/ChronologicalLayoutSettings.js");- Inheritance:
- ChronologicalLayoutSettings→
Accessor
- Since
- ArcGIS Maps SDK for JavaScript 4.32
Chronological layouts arrange entities and relationships using time. Entities with time properties, called event entities, and relationships with time properties, called event relationships, will be arranged on one or multiple timelines in the order that they occurred. The entity type or relationship type must have a time property and the layer must be time enabled for an entity or relationship to be considered an event. By default the time direction starts with the oldest date on the left and the newest date on the right. These layouts include a time banner which shows the time intervals most appropriate for the data, the start and end of each event, and the UTC offset. Settings allow you to customize the direction of the time axis, time zone, and the placement of entities and relationships. There are four types of events represented in chronological layouts:
- Durative entity events: Entities with a start and end date property.
- Punctual entity events: Entities with only one date property.
- Durative relationship events: Relationships with a start and end date property.
- Punctual relationship events: Relationships with only one date property.
Settings allow you to adjust the time banner, time direction, and how entities and relationships are positioned on a link chart.
Implementation Note
Chronological layouts require "Filter content using time" to be configured on the link chart sublayer properties.
The time fields used must have the type timestamp offset. Time can be set on a link chart created in ArcGIS Pro
and imported into to ArcGIS Knowledge Studio, or you can set time in the link chart layer definition using ArcGIS Pro or the ArcGIS REST API.
Constructors
Constructor
Parameters
| Parameter | Type | Description | Required |
|---|---|---|---|
| properties | | |
Properties
| Property | Type | Class |
|---|---|---|
declaredClass readonly inherited | ||
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | | |
| | ||
| | ||
| | ||
| | ||
| | ||
| | ||
| | ||
| | ||
| | ||
| | ||
| | ||
| | ||
| | ||
| |
durationLineWidth
- Type
- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10
An integer between 1 and 10 setting the width of the line, in points, representing the duration of events with non-zero durations. Applied only when showDurationLineForNonZeroDurationEntityEvents is true.
- Default value
- 5
entityPositionAtDurationRatio
- Type
- number
Determines the placement of an entity along a non-zero duration event interval. 0 represents the start of the interval, 1 represents the end of the interval. Only used in multi-timeline layouts.
- Default value
- 1
lineSeparationMultiplier
- Type
- number
The multiplier to be used for relationship line separation, where a higher multiplier leads to greater separation between lines. Utilized if separateTimeOverlaps or separateTimelineOverlaps is true.
- Default value
- 1
moveFirstBends
- Type
- boolean
When separateTimelineOverlaps is true, indicates whether the first bend on a relationship line related to an event is raised up above the event location, to reduce overlapping. Only valid in mono-timeline layouts.
- Default value
- true
secondBendRatio
- Type
- number
Ratio from 0 to 1 controlling the position at which the second bend of a relationship occurs, for event and non-event relationships between event and non-event entities. Lower values move the second bend position lower. Only used in the mono-timeline layout.
- Default value
- 0.3
separatedLineShapeRatio
- Type
- number
When separateTimeOverlaps is true, adjusts the angle between the extremities of the original and separated lines. When the ratio is high, the angle is small.
- Default value
- 0
separateTimelineOverlaps
- Type
- boolean
Indicates whether events that overlap on a timeline are separated.
- Default value
- true
separateTimeOverlaps
- Type
- boolean
Indicates whether events that overlap in time are separated.
- Default value
- true
showDurationLineForNonZeroDurationEntityEvents
- Type
- boolean
Determines whether or not lines representing the duration of events on entities with non-zero durations are shown. By default (false) lines are not displayed.
- Default value
- false
showNonZeroDurationIntervalBounds
- Type
- boolean
Determines whether to display interval bounds (tick lines at the start and end) of relationship lines for events with non-zero durations. Only used in multi-timeline layouts.
- Default value
- false
spaceSeparatedLinesEvenly
- Type
- boolean
Determines whether or not to space separated lines evenly, when either separateTimeOverlaps or separateTimelineOverlaps is true. When true, the offset for the i-th overlapping line is proportional to 'i'. If false, the offset is proportional to the square root of i.
- Default value
- false
timeBannerUTCOffsetInMinutes
- Type
- number
The UTC offset in minutes to use for the time banner.
- Default value
- 0
timeDirection
- Type
- TimeDirectionJSON
Controls the time axis orientation and the direction along which time increases in the layout, e.g. 'right' means that time axis is horizontal and time increases from left to right, 'bottom' means the time axis is vertical and time increases from top to bottom.
- Default value
- "right"
useBezierCurves
- Type
- boolean
Determines whether or not to use Bezier curves for separated lines. This setting will have no effect where Bezier curves are not supported.
- Default value
- false
Methods
fromJSON
- Signature
-
fromJSON (json: any): any
Creates a new instance of this class and initializes it with values from a JSON object
generated from an ArcGIS product. The object passed into the input json
parameter often comes from a response to a query operation in the REST API or a
toJSON()
method from another ArcGIS product. See the Using fromJSON()
topic in the Guide for details and examples of when and how to use this function.
Parameters
| Parameter | Type | Description | Required |
|---|---|---|---|
| json | A JSON representation of the instance in the ArcGIS format. See the ArcGIS REST API documentation for examples of the structure of various input JSON objects. | |
- Returns
- any
Returns a new instance of this class.
clone
- Signature
-
clone (): this
Creates a deep clone of this object. Any properties that store values by reference will be assigned copies of the referenced values on the cloned instance.
- Returns
- this
A deep clone of the class instance that invoked this method.
toJSON
- Signature
-
toJSON (): any
Converts an instance of this class to its ArcGIS portal JSON representation. See the Using fromJSON() guide topic for more information.
- Returns
- any
The ArcGIS portal JSON representation of an instance of this class.