Optional
Readonly
eventsProtected
optionsStatic
optionscrosshair lines color
enable/disable the crosshair lines
line style. Valid values:
width of the crosshair lines in pixels. Valid values:
enable/disable the grid lines in the background
controls the height of the chart
enable/disable the legend
controls if the most recent value of a timeseries is displayed in its respective legend entry
an error message that is displayed when no data is available
enable/disable the session break lines in the background
session break lines color
line style. Valid values:
width of the session break lines in pixels. Valid values:
a style id
whether to display the difference between start and end indices when the tapeline is active
whether to display the difference between start and end values when the tapeline is active
whether to display the percentage difference between start and end points when the tapeline is active
whether to display the speed calculation when the tapeline is active
controls the style of the bottom xAxis Valid values:
controls the style of the top xAxis Valid values:
returns or sets the attribute of an option this function should be used with care - modifications of internal properties might break stuff!
Optional
v: anymust be called after willUpdateOptions
once all actions that might potentially changed values of any options are done
IMPORTANT: methods must be called in balance; e.g. for each call to willUpdateOptions
, you must call didUpdateOptions
exactly once.
draw a horizontal marker this method should only be called while the chart is redrawing (e.g. from a tools draw routine)
if the important parameter is set to true, marker is also drawn when xAxis is not visible
Optional
order: numberOptional
important: booleandraw a tooltip with originating from the supplied rectangle,
upper left x coordinate
upper left y coordinate
width of rectangle
height of rectangle
draw a vertical marker with the specified property this method should only be called while the chart is redrawing (e.g. from a tools draw routine)
if the important parameter is set to true, marker is also drawn when xAxis is not visible
returns a flat representation of all available config options in the form of a key-value-object optionally only values that are not read-only can be returned
IMPORTANT: this method will always convert I18NStrings to strings, so for displaying strings in a UI use individual calls to Object:get instead
Optional
readWriteOnly: booleandefault: true
Optional
modifiedOnly: booleandefault: true
Optional
nonEphemeralOnly: booleandefault: true
returns the value of the requested option, or a list of all available config options if no parameter is specified.
Optional
s: stringOptional
flags: numberreturns the bounds of the values currently displayed by this chart
Optional
scale: numberreturns the parent ChartSet object
returns the categorization of the objects options can be used for displaying a more structured user interface
returns the identifier for the specified index
a valid index
the identifier
returns the index for the specified x coordinate
the x coordinate in pixels
the index
returns the identifier for the specified index
a valid identifier
the index
returns the numeric offset for the specified index will only be non-zero if the timestamp at the specified index is not distinct
offset should be used in combination with the return value of getIdentifierByIndex
an index
numeric offset
returns the bounds of the charts plot area
returns the inset values for all plot area edges plugins or tools should not draw any interactive elements within these areas
returns the reference ohlc input or null if not available
returns the objects current state
return the style object
returns the tick width of this chart
returns the value for the specified y coordinate
the y coordinate in pixels
Optional
scale: numberthe value in chart units
returns the x coordinate for the specified index
the index
x coordinate in pixels
returns the y coordinate for the specified value
the value in chart units
Optional
scale: numbery coordinate in pixels
Automatically toggles the EXPOSED flag on dependent options when a 'parent' option changes value.
For each entry in optionDependencies
, whenever the parent option
emits an optionChanged
event, its dependents (listed in dependentNames
)
will be exposed (flag added) if the new value === exposeWhen
, or
hidden (flag removed) otherwise.
Map where:
exposeWhen
: the boolean that triggers exposing the dependents or a function with the newValue for custom validationdependentNames
: array of dependent option names whose EXPOSED flag will be toggledclass Test extends ChartbreakerObject {
constructor() {
super();
this.registerOptionDependencyVisibility(new Map([
['showLine', { exposeWhen: true, dependentNames: ['lineColor', 'lineStyle'] }],
['advancedMode', { exposeWhen: false, dependentNames: ['simpleModeOnlyOption'] }],
['description'], { exposeWhen: (text) => !!text.length, ['fontSize', 'fontColor']}
]));
}
}
life cycle method; called when the object should start normal operation at this point is is already completely initialized
life cycle method; called when the object should stop normal operation if objects have any pending subscriptions/requests, they should all be stopped here
the object is also responsible for clearing the loading flag from it's state if it is currently active failing to do so will trigger a fatal error
object might be started again afterwards (start) or destroyed (destroy) this is not known yet at this point
called after start or restart
can be called to tell the object that it should recover from an error and resume will have no effect if no retryable error is currently associated with the object
Optional
type: Typewill set validate and then set the specified option(s) to the provided value(s) after validation
NOTE: if multiple options are used, will return false if at least one value is not valid values are applied individually however, so one option might be set even if the value for another is invalid
Optional
v: anyOptional
flags: ObjectEFlagshighlight the specified buttons
by default EventEmitters will print a warning if more than 10 listeners are added for a particular event. This is a useful default which helps finding memory leaks. Obviously not all Emitters should be limited to 10. This function allows that limit to be increased. Set to zero for unlimited.
Sets the objName and objType of the Object reverts to the default ones if no arguments are given
Optional
objType: stringOptional
objName: stringReturns a string representation of an object.
will set validate value(s) for the specified option(s)
NOTE: if multiple options are used, will return false if at least one value is not valid
Optional
v: anyOptional
flags: ObjectEFlagswhen using custom getters/setters (via _get/_set) in options, the values of options can change
without .set being called - or there might not even be a setter for readonly options;
for example, if the getter simply returns the value of a member variable
this variable could be modified directly.
In this case, events such as optionChanged
would not be fired, and listeners would not be informed about the change.
To account for such cases, the methods willUpdateOptions
and didUpdateOptions
should be called directly BEFORE and AFTER
actions that might potentially change values of options.
the correct events will then automatically be triggered when calling didUpdateOptions
.
if the options that could change are known, they can be supplied via the optional parameter. This provides a small performance gain in most situations.
IMPORTANT: methods must be called in balance; e.g. for each call to willUpdateOptions
, you must call didUpdateOptions
exactly once.
Optional
options: string | string[]Static
guardStatic
listenerStatic
set
This class implements two dimensional chart with one X-Axis, and one or more Y-Axes (represented by Scale). Charts are always contained inside a ChartSet where they share the same X-Axis.
The chart object is mainly responsible for event handling, and managing a set of tools (Tool), layers (Layers), and legend entries (LegendEntry).
Depending on the type of displayed layers, the X-Axis can be synced/locked to one or more Y-Axis, meaning that manipulating the scale of either will also affect the other. For example, this is used in Point and Figure charts, to ensure a constant aspect ratio.