pub struct Mesh3D<'a> { /* private fields */ }
Expand description
Draws sets of triangles with coordinates given by three 1-dimensional arrays in x
, y
, z
and (1) a sets of i
, j
, k
indices (2) Delaunay triangulation or (3) the Alpha-shape algorithm or (4) the Convex-hull algorithm
Implementations§
Source§impl<'a> Mesh3D<'a>
impl<'a> Mesh3D<'a>
Sourcepub fn visible(&mut self, visible: Visible) -> &mut Self
pub fn visible(&mut self, visible: Visible) -> &mut Self
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).
default: true
Sourcepub fn legendgroup(&mut self, legendgroup: &'a str) -> &mut Self
pub fn legendgroup(&mut self, legendgroup: &'a str) -> &mut Self
Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items.
default: ``
Sourcepub fn name(&mut self, name: &'a str) -> &mut Self
pub fn name(&mut self, name: &'a str) -> &mut Self
Sets the trace name. The trace name appear as the legend item and on hover.
Sourcepub fn uid(&mut self, uid: &'a str) -> &mut Self
pub fn uid(&mut self, uid: &'a str) -> &mut Self
Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.
Sourcepub fn ids(&mut self, ids: &'a [&'a str]) -> &mut Self
pub fn ids(&mut self, ids: &'a [&'a str]) -> &mut Self
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.
Sourcepub fn meta(&mut self, meta: Any) -> &mut Self
pub fn meta(&mut self, meta: Any) -> &mut Self
Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace name
, graph, axis and colorbar title.text
, annotation text
rangeselector
, updatemenues
and sliders
label
text all support meta
. To access the trace meta
values in an attribute in the same trace, simply use %{meta[i]}
where i
is the index or key of the meta
item in question. To access trace meta
in layout attributes, use %{data[n[.meta[i]}
where i
is the index or key of the meta
and n
is the trace index.
pub fn hoverlabel(&mut self) -> &mut Hoverlabel<'a>
pub fn stream(&mut self) -> &mut Stream<'a>
Sourcepub fn uirevision(&mut self, uirevision: Any) -> &mut Self
pub fn uirevision(&mut self, uirevision: Any) -> &mut Self
Controls persistence of some user-driven changes to the trace: constraintrange
in parcoords
traces, as well as some editable: true
modifications such as name
and colorbar.title
. Defaults to layout.uirevision
. Note that other user-driven trace attribute changes are controlled by layout
attributes: trace.visible
is controlled by layout.legend.uirevision
, selectedpoints
is controlled by layout.selectionrevision
, and colorbar.(x|y)
(accessible with config: {editable: true}
) is controlled by layout.editrevision
. Trace changes are tracked by uid
, which only falls back on trace index if no uid
is provided. So if your app can add/remove traces before the end of the data
array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a uid
that stays with it as it moves.
Sourcepub fn x(&mut self, x: &'a [f64]) -> &mut Self
pub fn x(&mut self, x: &'a [f64]) -> &mut Self
Sets the X coordinates of the vertices. The nth element of vectors x
, y
and z
jointly represent the X, Y and Z coordinates of the nth vertex.
Sourcepub fn y(&mut self, y: &'a [f64]) -> &mut Self
pub fn y(&mut self, y: &'a [f64]) -> &mut Self
Sets the Y coordinates of the vertices. The nth element of vectors x
, y
and z
jointly represent the X, Y and Z coordinates of the nth vertex.
Sourcepub fn z(&mut self, z: &'a [f64]) -> &mut Self
pub fn z(&mut self, z: &'a [f64]) -> &mut Self
Sets the Z coordinates of the vertices. The nth element of vectors x
, y
and z
jointly represent the X, Y and Z coordinates of the nth vertex.
Sourcepub fn i(&mut self, i: &'a [f64]) -> &mut Self
pub fn i(&mut self, i: &'a [f64]) -> &mut Self
A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the first vertex of a triangle. For example, {i[m], j[m], k[m]}
together represent face m (triangle m) in the mesh, where i[m] = n
points to the triplet {x[n], y[n], z[n]}
in the vertex arrays. Therefore, each element in i
represents a point in space, which is the first vertex of a triangle.
Sourcepub fn j(&mut self, j: &'a [f64]) -> &mut Self
pub fn j(&mut self, j: &'a [f64]) -> &mut Self
A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the second vertex of a triangle. For example, {i[m], j[m], k[m]}
together represent face m (triangle m) in the mesh, where j[m] = n
points to the triplet {x[n], y[n], z[n]}
in the vertex arrays. Therefore, each element in j
represents a point in space, which is the second vertex of a triangle.
Sourcepub fn k(&mut self, k: &'a [f64]) -> &mut Self
pub fn k(&mut self, k: &'a [f64]) -> &mut Self
A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the third vertex of a triangle. For example, {i[m], j[m], k[m]}
together represent face m (triangle m) in the mesh, where k[m] = n
points to the triplet {x[n], y[n], z[n]}
in the vertex arrays. Therefore, each element in k
represents a point in space, which is the third vertex of a triangle.
Sourcepub fn text(&mut self, text: &'a str) -> &mut Self
pub fn text(&mut self, text: &'a str) -> &mut Self
Sets the text elements associated with the vertices. If trace hoverinfo
contains a text flag and hovertext is not set, these elements will be seen in the hover labels.
default: ``
Sourcepub fn hovertemplate(&mut self, hovertemplate: &'a str) -> &mut Self
pub fn hovertemplate(&mut self, hovertemplate: &'a str) -> &mut Self
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-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in hovertemplate
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 are arrayOk: true
) are available. Anything contained in tag <extra>
is displayed in the secondary box, for example “<extra></extra>
.
default: ``
Sourcepub fn delaunayaxis(&mut self, delaunayaxis: Delaunayaxis) -> &mut Self
pub fn delaunayaxis(&mut self, delaunayaxis: Delaunayaxis) -> &mut Self
Sets the Delaunay axis, which is the axis that is perpendicular to the surface of the Delaunay triangulation. It has an effect if i
, j
, k
are not provided and alphahull
is set to indicate Delaunay triangulation.
default: z
Sourcepub fn alphahull(&mut self, alphahull: f64) -> &mut Self
pub fn alphahull(&mut self, alphahull: f64) -> &mut Self
Determines how the mesh surface triangles are derived from the set of vertices (points) represented by the x
, y
and z
arrays, if the i
, j
, k
arrays are not supplied. For general use of mesh3d
it is preferred that i
, j
, k
are supplied. If -1, Delaunay triangulation is used, which is mainly suitable if the mesh is a single, more or less layer surface that is perpendicular to delaunayaxis
. In case the delaunayaxis
intersects the mesh surface at more than one point it will result triangles that are very long in the dimension of delaunayaxis
. If >0, the alpha-shape algorithm is used. In this case, the positive alphahull
value signals the use of the alpha-shape algorithm, and its value acts as the parameter for the mesh fitting. If 0, the convex-hull algorithm is used. It is suitable for convex bodies or if the intention is to enclose the x
, y
and z
point set into a convex hull.
default: -1
Sourcepub fn intensity(&mut self, intensity: &'a [f64]) -> &mut Self
pub fn intensity(&mut self, intensity: &'a [f64]) -> &mut Self
Sets the intensity values for vertices or cells as defined by intensitymode
. It can be used for plotting fields on meshes.
Sourcepub fn intensitymode(&mut self, intensitymode: Intensitymode) -> &mut Self
pub fn intensitymode(&mut self, intensitymode: Intensitymode) -> &mut Self
Determines the source of intensity
values.
default: vertex
Sourcepub fn vertexcolor(&mut self, vertexcolor: &'a [f64]) -> &mut Self
pub fn vertexcolor(&mut self, vertexcolor: &'a [f64]) -> &mut Self
Sets the color of each vertex Overrides color. While Red, green and blue colors are in the range of 0 and 255; in the case of having vertex color data in RGBA format, the alpha color should be normalized to be between 0 and 1.
Sourcepub fn facecolor(&mut self, facecolor: &'a [f64]) -> &mut Self
pub fn facecolor(&mut self, facecolor: &'a [f64]) -> &mut Self
Sets the color of each face Overrides color and vertexcolor.
Sourcepub fn cauto(&mut self, cauto: bool) -> &mut Self
pub fn cauto(&mut self, cauto: bool) -> &mut Self
Determines whether or not the color domain is computed with respect to the input data (here intensity
) or the bounds set in cmin
and cmax
Defaults to false
when cmin
and cmax
are set by the user.
default: true
Sourcepub fn cmin(&mut self, cmin: f64) -> &mut Self
pub fn cmin(&mut self, cmin: f64) -> &mut Self
Sets the lower bound of the color domain. Value should have the same units as intensity
and if set, cmax
must be set as well.
default: null
Sourcepub fn cmax(&mut self, cmax: f64) -> &mut Self
pub fn cmax(&mut self, cmax: f64) -> &mut Self
Sets the upper bound of the color domain. Value should have the same units as intensity
and if set, cmin
must be set as well.
default: null
Sourcepub fn cmid(&mut self, cmid: f64) -> &mut Self
pub fn cmid(&mut self, cmid: f64) -> &mut Self
Sets the mid-point of the color domain by scaling cmin
and/or cmax
to be equidistant to this point. Value should have the same units as intensity
. Has no effect when cauto
is false
.
default: null
Sourcepub fn colorscale(&mut self, colorscale: ColorScale<'a>) -> &mut Self
pub fn colorscale(&mut self, colorscale: ColorScale<'a>) -> &mut Self
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
and cmax
. 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.
default: null
Sourcepub fn autocolorscale(&mut self, autocolorscale: bool) -> &mut Self
pub fn autocolorscale(&mut self, autocolorscale: bool) -> &mut Self
Determines whether the colorscale is a default palette (autocolorscale: true
) or the palette determined by colorscale
. In case colorscale
is unspecified or autocolorscale
is true, the default palette will be chosen according to whether numbers in the color
array are all positive, all negative or mixed.
default: true
Sourcepub fn reversescale(&mut self, reversescale: bool) -> &mut Self
pub fn reversescale(&mut self, reversescale: bool) -> &mut Self
Reverses the color mapping if true. If true, cmin
will correspond to the last color in the array and cmax
will correspond to the first color.
default: false
Sourcepub fn showscale(&mut self, showscale: bool) -> &mut Self
pub fn showscale(&mut self, showscale: bool) -> &mut Self
Determines whether or not a colorbar is displayed for this trace.
default: true
pub fn colorbar(&mut self) -> &mut Colorbar<'a>
Sourcepub fn coloraxis(&mut self, coloraxis: &'a str) -> &mut Self
pub fn coloraxis(&mut self, coloraxis: &'a str) -> &mut Self
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.
default: null
Sourcepub fn opacity(&mut self, opacity: f64) -> &mut Self
pub fn opacity(&mut self, opacity: f64) -> &mut Self
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.
default: 1
Sourcepub fn flatshading(&mut self, flatshading: bool) -> &mut Self
pub fn flatshading(&mut self, flatshading: bool) -> &mut Self
Determines whether or not normal smoothing is applied to the meshes, creating meshes with an angular, low-poly look via flat reflections.
default: false
pub fn contour(&mut self) -> &mut Contour<'a>
pub fn lightposition(&mut self) -> &mut Lightposition
pub fn lighting(&mut self) -> &mut Lighting
Sourcepub fn hoverinfo(&mut self) -> &mut Hoverinfo
pub fn hoverinfo(&mut self) -> &mut Hoverinfo
Determines which trace information appear on hover. If none
or skip
are set, no information is displayed upon hovering. But, if none
is set, click and hover events are still fired.
default: all
Sourcepub fn showlegend(&mut self, showlegend: bool) -> &mut Self
pub fn showlegend(&mut self, showlegend: bool) -> &mut Self
Determines whether or not an item corresponding to this trace is shown in the legend.
default: false
Sourcepub fn xcalendar(&mut self, xcalendar: Xcalendar) -> &mut Self
pub fn xcalendar(&mut self, xcalendar: Xcalendar) -> &mut Self
Sets the calendar system to use with x
date data.
default: gregorian
Sourcepub fn ycalendar(&mut self, ycalendar: Ycalendar) -> &mut Self
pub fn ycalendar(&mut self, ycalendar: Ycalendar) -> &mut Self
Sets the calendar system to use with y
date data.
default: gregorian
Sourcepub fn zcalendar(&mut self, zcalendar: Zcalendar) -> &mut Self
pub fn zcalendar(&mut self, zcalendar: Zcalendar) -> &mut Self
Sets the calendar system to use with z
date data.
default: gregorian
Sourcepub fn scene(&mut self, scene: &'a str) -> &mut Self
pub fn scene(&mut self, scene: &'a str) -> &mut Self
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 to layout.scene2
, and so on.
default: scene
Sourcepub fn idssrc(&mut self, idssrc: &'a str) -> &mut Self
pub fn idssrc(&mut self, idssrc: &'a str) -> &mut Self
Sets the source reference on Chart Studio Cloud for ids .
Sourcepub fn customdatasrc(&mut self, customdatasrc: &'a str) -> &mut Self
pub fn customdatasrc(&mut self, customdatasrc: &'a str) -> &mut Self
Sets the source reference on Chart Studio Cloud for customdata .
Sourcepub fn metasrc(&mut self, metasrc: &'a str) -> &mut Self
pub fn metasrc(&mut self, metasrc: &'a str) -> &mut Self
Sets the source reference on Chart Studio Cloud for meta .
Sourcepub fn xsrc(&mut self, xsrc: &'a str) -> &mut Self
pub fn xsrc(&mut self, xsrc: &'a str) -> &mut Self
Sets the source reference on Chart Studio Cloud for x .
Sourcepub fn ysrc(&mut self, ysrc: &'a str) -> &mut Self
pub fn ysrc(&mut self, ysrc: &'a str) -> &mut Self
Sets the source reference on Chart Studio Cloud for y .
Sourcepub fn zsrc(&mut self, zsrc: &'a str) -> &mut Self
pub fn zsrc(&mut self, zsrc: &'a str) -> &mut Self
Sets the source reference on Chart Studio Cloud for z .
Sourcepub fn isrc(&mut self, isrc: &'a str) -> &mut Self
pub fn isrc(&mut self, isrc: &'a str) -> &mut Self
Sets the source reference on Chart Studio Cloud for i .
Sourcepub fn jsrc(&mut self, jsrc: &'a str) -> &mut Self
pub fn jsrc(&mut self, jsrc: &'a str) -> &mut Self
Sets the source reference on Chart Studio Cloud for j .
Sourcepub fn ksrc(&mut self, ksrc: &'a str) -> &mut Self
pub fn ksrc(&mut self, ksrc: &'a str) -> &mut Self
Sets the source reference on Chart Studio Cloud for k .
Sourcepub fn textsrc(&mut self, textsrc: &'a str) -> &mut Self
pub fn textsrc(&mut self, textsrc: &'a str) -> &mut Self
Sets the source reference on Chart Studio Cloud for text .
Sourcepub fn hovertextsrc(&mut self, hovertextsrc: &'a str) -> &mut Self
pub fn hovertextsrc(&mut self, hovertextsrc: &'a str) -> &mut Self
Sets the source reference on Chart Studio Cloud for hovertext .
Sourcepub fn hovertemplatesrc(&mut self, hovertemplatesrc: &'a str) -> &mut Self
pub fn hovertemplatesrc(&mut self, hovertemplatesrc: &'a str) -> &mut Self
Sets the source reference on Chart Studio Cloud for hovertemplate .
Sourcepub fn intensitysrc(&mut self, intensitysrc: &'a str) -> &mut Self
pub fn intensitysrc(&mut self, intensitysrc: &'a str) -> &mut Self
Sets the source reference on Chart Studio Cloud for intensity .
Sourcepub fn vertexcolorsrc(&mut self, vertexcolorsrc: &'a str) -> &mut Self
pub fn vertexcolorsrc(&mut self, vertexcolorsrc: &'a str) -> &mut Self
Sets the source reference on Chart Studio Cloud for vertexcolor .
Sourcepub fn facecolorsrc(&mut self, facecolorsrc: &'a str) -> &mut Self
pub fn facecolorsrc(&mut self, facecolorsrc: &'a str) -> &mut Self
Sets the source reference on Chart Studio Cloud for facecolor .
Sourcepub fn hoverinfosrc(&mut self, hoverinfosrc: &'a str) -> &mut Self
pub fn hoverinfosrc(&mut self, hoverinfosrc: &'a str) -> &mut Self
Sets the source reference on Chart Studio Cloud for hoverinfo .