Cone
Use cone traces to visualize vector fields.
Specify a vector field using 6 1D arrays, 3 position arrays x
, y
and z
and 3 vector
component arrays u
, v
, w
. The cones are drawn exactly at the positions given by x
, y
and z
.
-
Corresponding Plotly trace type.
Declaration
Swift
public let type: String
-
Switch indicating whether the trace supports animation of its data.
Declaration
Swift
public static var animatable: Bool { get }
-
Determines whether or not this trace is visible.
If legendonly, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).
Declaration
Swift
public var visible: Visible?
-
Sets the legend group for this trace.
Traces part of the same legend group hide/show at the same time when toggling legend items.
Declaration
Swift
public var legendGroup: String?
-
Sets the trace name.
The trace name appear as the legend item and on hover.
Declaration
Swift
public var name: String?
-
Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.
Declaration
Swift
public var uid: String?
-
Assigns id labels to each datum.
These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.
Declaration
Swift
public var ids: [String]?
-
Assigns extra data each datum.
This may be useful when listening to hover, click and selection events. Note that, scatter traces also appends customdata items in the markers DOM elements
Declaration
Swift
public var customData: [String]?
-
Assigns extra meta information associated with this trace that can be used in various text attributes.
Attributes such as trace
name
, graph, axis and colorbartitle.text
, annotationtext
rangeselector
,updatemenues
andsliders
label
text all supportmeta
. To access the tracemeta
values in an attribute in the same trace, simply use%{meta[i]}
wherei
is the index or key of themeta
item in question. To access tracemeta
in layout attributes, use%{data[n[.meta[i]}
wherei
is the index or key of themeta
andn
is the trace index. -
Undocumented
Declaration
Swift
public var hoverLabel: HoverLabel?
-
Undocumented
Declaration
Swift
public var stream: Stream?
-
Controls persistence of some user-driven changes to the trace:
constraintrange
inparcoords
traces, as well as someeditable: true
modifications such asname
andcolorbar.title
.Defaults to
layout.uirevision
. Note that other user-driven trace attribute changes are controlled bylayout
attributes:trace.visible
is controlled bylayout.legend.uirevision
,selectedpoints
is controlled bylayout.selectionrevision
, andcolorbar.(x|y)
(accessible withconfig: {editable: true}
) is controlled bylayout.editrevision
. Trace changes are tracked byuid
, which only falls back on trace index if nouid
is provided. So if your app can add/remove traces before the end of thedata
array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace auid
that stays with it as it moves.Declaration
Swift
public var uiRevision: Anything?
-
Sets the x coordinates of the vector field and of the displayed cones.
Declaration
Swift
public var x: XYZData?
-
Sets the y coordinates of the vector field and of the displayed cones.
Declaration
Swift
public var y: XYZData?
-
Sets the z coordinates of the vector field and of the displayed cones.
Declaration
Swift
public var z: XYZData?
-
Sets the x components of the vector field.
Declaration
Swift
public var u: UVWData?
-
Sets the y components of the vector field.
Declaration
Swift
public var v: UVWData?
-
Sets the z components of the vector field.
Declaration
Swift
public var w: UVWData?
-
Determines whether
See moresizeref
is set as a scaled (i.e unitless) scalar (normalized by the max u/v/w norm in the vector field) or as absolute value (in the same units as the vector field).Declaration
Swift
public enum SizeMode : String, Encodable
-
Determines whether
sizeref
is set as a scaled (i.e unitless) scalar (normalized by the max u/v/w norm in the vector field) or as absolute value (in the same units as the vector field).Declaration
Swift
public var sizeMode: SizeMode?
-
Adjusts the cone size scaling.
The size of the cones is determined by their u/v/w norm multiplied a factor and
sizeref
. This factor (computed internally) corresponds to the minimum “time” to travel across two successive x/y/z positions at the average velocity of those two successive positions. All cones in a given trace use the same factor. Withsizemode
set to scaled,sizeref
is unitless, its default value is 0.5 Withsizemode
set to absolute,sizeref
has the same units as the u/v/w vector field, its the default value is half the sample’s maximum vector norm.Declaration
Swift
public var sizeReference: Double?
-
Sets the cones’ anchor with respect to their x/y/z positions.
Note that cm denote the cone’s center of mass which corresponds to ¼ from the tail to tip.
See moreDeclaration
Swift
public enum Anchor : String, Encodable
-
Sets the cones’ anchor with respect to their x/y/z positions.
Note that cm denote the cone’s center of mass which corresponds to ¼ from the tail to tip.
Declaration
Swift
public var anchor: Anchor?
-
Sets the text elements associated with the cones.
If trace
hoverinfo
contains a text flag and hovertext is not set, these elements will be seen in the hover labels.Declaration
Swift
public var text: Data<String>?
-
Template string used for rendering the information that appear on hover box.
Note that this will override
hoverinfo
. Variables are inserted using %{variable}, for example “y: %{y}”. Numbers are formatted using d3-format’s syntax %{variable:d3-format}, for example “Price: %{y:$.2f}”. https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format’s syntax %{variable|d3-time-format}, for example “Day: %{2019-01-01|%A}”. https://github.com/d3/d3-time-format#locale_format for details on the date formatting syntax. The variables available inhovertemplate
are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that arearrayOk: true
) are available. variablenorm
Anything contained in tag<extra>
is displayed in the secondary box, for example “{fullData.name} ”. To hide the secondary box completely, use an empty tag<extra></extra>
.Declaration
Swift
public var hoverTemplate: Data<String>?
-
Determines whether or not an item corresponding to this trace is shown in the legend.
Declaration
Swift
public var showLegend: Bool?
-
Determines whether or not the color domain is computed with respect to the input data (here u/v/w norm) or the bounds set in
cmin
andcmax
Defaults tofalse
whencmin
andcmax
are set by the user.Declaration
Swift
public var cAuto: Bool?
-
Sets the lower bound of the color domain.
Value should have the same units as u/v/w norm and if set,
cmax
must be set as well.Declaration
Swift
public var cMin: Double?
-
Sets the upper bound of the color domain.
Value should have the same units as u/v/w norm and if set,
cmin
must be set as well.Declaration
Swift
public var cMax: Double?
-
Sets the mid-point of the color domain by scaling
cmin
and/orcmax
to be equidistant to this point.Value should have the same units as u/v/w norm. Has no effect when
cauto
isfalse
.Declaration
Swift
public var cMiddle: Double?
-
Sets the colorscale.
The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example,
[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]
. To control the bounds of the colorscale in color space, usecmin
andcmax
. Alternatively,colorscale
may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis.Declaration
Swift
public var colorScale: ColorScale?
-
Determines whether the colorscale is a default palette (
autocolorscale: true
) or the palette determined bycolorscale
.In case
colorscale
is unspecified orautocolorscale
is true, the default palette will be chosen according to whether numbers in thecolor
array are all positive, all negative or mixed.Declaration
Swift
public var autoColorScale: Bool?
-
Reverses the color mapping if true.
If true,
cmin
will correspond to the last color in the array andcmax
will correspond to the first color.Declaration
Swift
public var reverseScale: Bool?
-
Determines whether or not a colorbar is displayed for this trace.
Declaration
Swift
public var showScale: Bool?
-
Undocumented
Declaration
Swift
public var colorBar: ColorBar?
-
Sets a reference to a shared color axis.
References to these shared color axes are coloraxis, coloraxis2, coloraxis3, etc. Settings for these shared color axes are set in the layout, under
layout.coloraxis
,layout.coloraxis2
, etc. Note that multiple color scales can be linked to the same color axis.Declaration
Swift
public var colorAxis: ColorAxis
-
Sets the opacity of the surface.
Please note that in the case of using high
opacity
values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.Declaration
Swift
public var opacity: Double?
-
Undocumented
Declaration
Swift
public var lightPosition: LightPosition?
-
Undocumented
Declaration
Swift
public var lighting: Lighting?
-
Determines which trace information appear on hover.
If
See morenone
orskip
are set, no information is displayed upon hovering. But, ifnone
is set, click and hover events are still fired.Declaration
Swift
public struct HoverInfo : OptionSet, Encodable
-
Determines which trace information appear on hover.
If
none
orskip
are set, no information is displayed upon hovering. But, ifnone
is set, click and hover events are still fired.Declaration
Swift
public var hoverInfo: HoverInfo?
-
Sets a reference between this trace’s 3D coordinate system and a 3D scene.
If scene (the default value), the (x,y,z) coordinates refer to
layout.scene
. If scene2, the (x,y,z) coordinates refer tolayout.scene2
, and so on.Declaration
Swift
public var scene: Scene
-
Creates
Cone
object from the most frequently used properties.Declaration
Swift
public init(name: String? = nil, x: XYZData? = nil, y: XYZData? = nil, z: XYZData? = nil, u: UVWData? = nil, v: UVWData? = nil, w: UVWData? = nil, text: Data<String>? = nil, hoverText: Data<String>? = nil, colorScale: ColorScale? = nil, reverseScale: Bool? = nil)
Parameters
name
Sets the trace name.
x
Sets the x coordinates of the vector field and of the displayed cones.
y
Sets the y coordinates of the vector field and of the displayed cones.
z
Sets the z coordinates of the vector field and of the displayed cones.
u
Sets the x components of the vector field.
v
Sets the y components of the vector field.
w
Sets the z components of the vector field.
text
Sets the text elements associated with the cones.
hoverText
Same as
text
.colorScale
Sets the colorscale.
reverseScale
Reverses the color mapping if true.
-
init(visible:
legendGroup: name: uid: ids: customData: meta: hoverLabel: stream: uiRevision: x: y: z: u: v: w: sizeMode: sizeReference: anchor: text: hoverText: hoverTemplate: showLegend: cAuto: cMin: cMax: cMiddle: colorScale: autoColorScale: reverseScale: showScale: colorBar: colorAxis: opacity: lightPosition: lighting: hoverInfo: scene: ) Creates
Cone
object with specified properties.Declaration
Swift
public init(visible: Visible? = nil, legendGroup: String? = nil, name: String? = nil, uid: String? = nil, ids: [String]? = nil, customData: [String]? = nil, meta: Data<Anything>? = nil, hoverLabel: HoverLabel? = nil, stream: Stream? = nil, uiRevision: Anything? = nil, x: XYZData? = nil, y: XYZData? = nil, z: XYZData? = nil, u: UVWData? = nil, v: UVWData? = nil, w: UVWData? = nil, sizeMode: SizeMode? = nil, sizeReference: Double? = nil, anchor: Anchor? = nil, text: Data<String>? = nil, hoverText: Data<String>? = nil, hoverTemplate: Data<String>? = nil, showLegend: Bool? = nil, cAuto: Bool? = nil, cMin: Double? = nil, cMax: Double? = nil, cMiddle: Double? = nil, colorScale: ColorScale? = nil, autoColorScale: Bool? = nil, reverseScale: Bool? = nil, showScale: Bool? = nil, colorBar: ColorBar? = nil, colorAxis: ColorAxis = .preset, opacity: Double? = nil, lightPosition: LightPosition? = nil, lighting: Lighting? = nil, hoverInfo: HoverInfo? = nil, scene: Scene = .preset)
Parameters
visible
Determines whether or not this trace is visible.
legendGroup
Sets the legend group for this trace.
name
Sets the trace name.
uid
Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.
ids
Assigns id labels to each datum.
customData
Assigns extra data each datum.
meta
Assigns extra meta information associated with this trace that can be used in various text attributes.
hoverLabel
stream
uiRevision
Controls persistence of some user-driven changes to the trace:
constraintrange
inparcoords
traces, as well as someeditable: true
modifications such asname
andcolorbar.title
.x
Sets the x coordinates of the vector field and of the displayed cones.
y
Sets the y coordinates of the vector field and of the displayed cones.
z
Sets the z coordinates of the vector field and of the displayed cones.
u
Sets the x components of the vector field.
v
Sets the y components of the vector field.
w
Sets the z components of the vector field.
sizeMode
Determines whether
sizeref
is set as a scaled (i.e unitless) scalar (normalized by the max u/v/w norm in the vector field) or as absolute value (in the same units as the vector field).sizeReference
Adjusts the cone size scaling.
anchor
Sets the cones’ anchor with respect to their x/y/z positions.
text
Sets the text elements associated with the cones.
hoverText
Same as
text
.hoverTemplate
Template string used for rendering the information that appear on hover box.
showLegend
Determines whether or not an item corresponding to this trace is shown in the legend.
cAuto
Determines whether or not the color domain is computed with respect to the input data (here u/v/w norm) or the bounds set in
cmin
andcmax
Defaults tofalse
whencmin
andcmax
are set by the user.cMin
Sets the lower bound of the color domain.
cMax
Sets the upper bound of the color domain.
cMiddle
Sets the mid-point of the color domain by scaling
cmin
and/orcmax
to be equidistant to this point.colorScale
Sets the colorscale.
autoColorScale
Determines whether the colorscale is a default palette (
autocolorscale: true
) or the palette determined bycolorscale
.reverseScale
Reverses the color mapping if true.
showScale
Determines whether or not a colorbar is displayed for this trace.
colorBar
colorAxis
Sets a reference to a shared color axis.
opacity
Sets the opacity of the surface.
lightPosition
lighting
hoverInfo
Determines which trace information appear on hover.
scene
Sets a reference between this trace’s 3D coordinate system and a 3D scene.
-
Encodes the object in a format compatible with Plotly.
Declaration
Swift
public func encode(to encoder: Encoder) throws