Struct plotly::layout::Annotation
source · pub struct Annotation { /* private fields */ }
Implementations§
source§impl Annotation
impl Annotation
sourcepub fn visible(self, value: bool) -> Self
pub fn visible(self, value: bool) -> Self
Determines whether or not this annotation is visible.
sourcepub fn text_angle(self, value: f64) -> Self
pub fn text_angle(self, value: f64) -> Self
Sets the angle at which the text
is drawn with respect to the
horizontal.
sourcepub fn width(self, value: f64) -> Self
pub fn width(self, value: f64) -> Self
Sets an explicit width for the text box. null (default) lets the text
set the box width. Wider text will be clipped. There is no automatic
wrapping; use
to start a new line.
sourcepub fn height(self, value: f64) -> Self
pub fn height(self, value: f64) -> Self
Sets an explicit height for the text box. null (default) lets the text set the box height. Taller text will be clipped.
sourcepub fn align(self, value: HAlign) -> Self
pub fn align(self, value: HAlign) -> Self
Sets the horizontal alignment of the text
within the box. Has an
effect only if text
spans two or more lines (i.e. text
contains
one or more
HTML tags) or if an explicit width is set to
override the text width.
sourcepub fn valign(self, value: VAlign) -> Self
pub fn valign(self, value: VAlign) -> Self
Sets the vertical alignment of the text
within the box. Has an effect
only if an explicit height is set to override the text height.
sourcepub fn background_color(self, value: impl Color) -> Self
pub fn background_color(self, value: impl Color) -> Self
Sets the background color of the annotation.
sourcepub fn border_color(self, value: impl Color) -> Self
pub fn border_color(self, value: impl Color) -> Self
Sets the color of the border enclosing the annotation text
.
sourcepub fn border_pad(self, value: f64) -> Self
pub fn border_pad(self, value: f64) -> Self
Sets the padding (in px) between the text
and the enclosing border.
sourcepub fn border_width(self, value: f64) -> Self
pub fn border_width(self, value: f64) -> Self
Sets the width (in px) of the border enclosing the annotation text
.
sourcepub fn show_arrow(self, value: bool) -> Self
pub fn show_arrow(self, value: bool) -> Self
Determines whether or not the annotation is drawn with an arrow. If
“True”, text
is placed near the arrow’s tail. If “False”, text
lines up with the x
and y
provided.
sourcepub fn arrow_color(self, value: impl Color) -> Self
pub fn arrow_color(self, value: impl Color) -> Self
Sets the color of the annotation arrow.
sourcepub fn arrow_head(self, value: u8) -> Self
pub fn arrow_head(self, value: u8) -> Self
Sets the end annotation arrow head style. Integer between or equal to 0 and 8.
sourcepub fn start_arrow_head(self, value: u8) -> Self
pub fn start_arrow_head(self, value: u8) -> Self
Sets the start annotation arrow head style. Integer between or equal to 0 and 8.
sourcepub fn arrow_side(self, value: ArrowSide) -> Self
pub fn arrow_side(self, value: ArrowSide) -> Self
Sets the annotation arrow head position.
sourcepub fn arrow_size(self, value: f64) -> Self
pub fn arrow_size(self, value: f64) -> Self
Sets the size of the end annotation arrow head, relative to
arrowwidth
. A value of 1 (default) gives a head about 3x as wide
as the line.
sourcepub fn start_arrow_size(self, value: f64) -> Self
pub fn start_arrow_size(self, value: f64) -> Self
Sets the size of the start annotation arrow head, relative to
arrowwidth
. A value of 1 (default) gives a head about 3x as wide
as the line.
sourcepub fn arrow_width(self, value: f64) -> Self
pub fn arrow_width(self, value: f64) -> Self
Sets the width (in px) of annotation arrow line.
sourcepub fn stand_off(self, value: f64) -> Self
pub fn stand_off(self, value: f64) -> Self
Sets a distance, in pixels, to move the end arrowhead away from the
position it is pointing at, for example to point at the edge of a
marker independent of zoom. Note that this shortens the arrow from
the ax
/ ay
vector, in contrast to xshift
/ yshift
which
moves everything by this amount.
sourcepub fn start_stand_off(self, value: f64) -> Self
pub fn start_stand_off(self, value: f64) -> Self
Sets a distance, in pixels, to move the start arrowhead away from the
position it is pointing at, for example to point at the edge of a
marker independent of zoom. Note that this shortens the arrow from
the ax
/ ay
vector, in contrast to xshift
/ yshift
which moves everything by this amount.
sourcepub fn ax(self, value: impl Into<NumOrString>) -> Self
pub fn ax(self, value: impl Into<NumOrString>) -> Self
Sets the x component of the arrow tail about the arrow head. If axref
is pixel
, a positive (negative) component corresponds to an arrow
pointing from right to left (left to right). If axref
is an axis,
this is an absolute value on that axis, like x
, NOT a
relative value.
sourcepub fn ay(self, value: impl Into<NumOrString>) -> Self
pub fn ay(self, value: impl Into<NumOrString>) -> Self
Sets the y component of the arrow tail about the arrow head. If ayref
is pixel
, a positive (negative) component corresponds to an arrow
pointing from bottom to top (top to bottom). If ayref
is an axis,
this is an absolute value on that axis, like y
, NOT a
relative value.
sourcepub fn ax_ref(self, value: impl AsRef<str>) -> Self
pub fn ax_ref(self, value: impl AsRef<str>) -> Self
Indicates in what terms the tail of the annotation (ax,ay) is specified.
If pixel
, ax
is a relative offset in pixels from x
. If set to
an x axis id (e.g. “x” or “x2”), ax
is specified in the same terms
as that axis. This is useful for trendline annotations which
should continue to indicate the correct trend when zoomed.
sourcepub fn ay_ref(self, value: impl AsRef<str>) -> Self
pub fn ay_ref(self, value: impl AsRef<str>) -> Self
Indicates in what terms the tail of the annotation (ax,ay) is specified.
If pixel
, ay
is a relative offset in pixels from y
. If set to
a y axis id (e.g. “y” or “y2”), ay
is specified in the same terms
as that axis. This is useful for trendline annotations which
should continue to indicate the correct trend when zoomed.
sourcepub fn x_ref(self, value: impl AsRef<str>) -> Self
pub fn x_ref(self, value: impl AsRef<str>) -> Self
Sets the annotation’s x coordinate axis. If set to an x axis id (e.g.
“x” or “x2”), the x
position refers to an x coordinate If set to
“paper”, the x
position refers to the distance from the left side
of the plotting area in normalized coordinates where 0 (1)
corresponds to the left (right) side.
sourcepub fn x(self, value: impl Into<NumOrString>) -> Self
pub fn x(self, value: impl Into<NumOrString>) -> Self
Sets the annotation’s x position. If the axis type
is “log”, then you
must take the log of your desired range. If the axis type
is
“date”, it should be date strings, like date data, though Date
objects and unix milliseconds will be accepted and converted to strings.
If the axis type
is “category”, it should be numbers, using the scale
where each category is assigned a serial number from zero in the
order it appears.
sourcepub fn x_anchor(self, value: Anchor) -> Self
pub fn x_anchor(self, value: Anchor) -> Self
Sets the text box’s horizontal position anchor This anchor binds the x
position to the “left”, “center” or “right” of the annotation. For
example, if x
is set to 1, xref
to “paper” and xanchor
to
“right” then the right-most portion of the annotation lines up with
the right-most edge of the plotting area. If “auto”, the anchor is
equivalent to “center” for data-referenced annotations or if there
is an arrow, whereas for paper-referenced with no arrow, the anchor
picked corresponds to the closest side.
sourcepub fn x_shift(self, value: f64) -> Self
pub fn x_shift(self, value: f64) -> Self
Shifts the position of the whole annotation and arrow to the right (positive) or left (negative) by this many pixels.
sourcepub fn y_ref(self, value: impl AsRef<str>) -> Self
pub fn y_ref(self, value: impl AsRef<str>) -> Self
Sets the annotation’s y coordinate axis. If set to an y axis id (e.g.
“y” or “y2”), the y
position refers to an y coordinate If set to
“paper”, the y
position refers to the distance from the bottom of
the plotting area in normalized coordinates where 0 (1) corresponds
to the bottom (top).
sourcepub fn y(self, value: impl Into<NumOrString>) -> Self
pub fn y(self, value: impl Into<NumOrString>) -> Self
Sets the annotation’s y position. If the axis type
is “log”, then you
must take the log of your desired range. If the axis type
is
“date”, it should be date strings, like date data, though Date
objects and unix milliseconds will be accepted and converted to strings.
If the axis type
is “category”, it should be numbers, using the
scale where each category is assigned a serial number from zero in
the order it appears.
sourcepub fn y_anchor(self, value: Anchor) -> Self
pub fn y_anchor(self, value: Anchor) -> Self
Sets the text box’s vertical position anchor This anchor binds the y
position to the “top”, “middle” or “bottom” of the annotation. For
example, if y
is set to 1, yref
to “paper” and yanchor
to
“top” then the top-most portion of the annotation lines up with the
top-most edge of the plotting area. If “auto”, the anchor is equivalent
to “middle” for data-referenced annotations or if there is an arrow,
whereas for paper-referenced with no arrow, the anchor picked
corresponds to the closest side.
sourcepub fn y_shift(self, value: f64) -> Self
pub fn y_shift(self, value: f64) -> Self
Shifts the position of the whole annotation and arrow up (positive) or down (negative) by this many pixels.
sourcepub fn click_to_show(self, value: ClickToShow) -> Self
pub fn click_to_show(self, value: ClickToShow) -> Self
Makes this annotation respond to clicks on the plot. If you click a data
point that exactly matches the x
and y
values of this
annotation, and it is hidden (visible: false), it will appear. In
“onoff” mode, you must click the same point again to make it disappear,
so if you click multiple points, you can show multiple annotations.
In “onout” mode, a click anywhere else in the plot (on another data
point or not) will hide this annotation. If you need to show/hide
this annotation in response to different x
or y
values, you can set
xclick
and/or yclick
. This is useful for example to label the side
of a bar. To label markers though, standoff
is preferred over
xclick
and yclick
.
sourcepub fn x_click(self, value: impl Into<NumOrString>) -> Self
pub fn x_click(self, value: impl Into<NumOrString>) -> Self
Toggle this annotation when clicking a data point whose x
value is
xclick
rather than the annotation’s x
value.
sourcepub fn y_click(self, value: impl Into<NumOrString>) -> Self
pub fn y_click(self, value: impl Into<NumOrString>) -> Self
Toggle this annotation when clicking a data point whose y
value is
yclick
rather than the annotation’s y
value.
sourcepub fn hover_text(self, value: impl AsRef<str>) -> Self
pub fn hover_text(self, value: impl AsRef<str>) -> Self
Sets text to appear when hovering over this annotation. If omitted or blank, no hover label will appear.
sourcepub fn hover_label(self, value: Label) -> Self
pub fn hover_label(self, value: Label) -> Self
Label displayed on mouse hover.
sourcepub fn capture_events(self, value: bool) -> Self
pub fn capture_events(self, value: bool) -> Self
Determines whether the annotation text box captures mouse move and click
events, or allows those events to pass through to data points in the
plot that may be behind the annotation. By default captureevents
is “false” unless hovertext
is provided. If you use the event
plotly_clickannotation
without hovertext
you must explicitly enable
captureevents
.
sourcepub fn name(self, value: impl AsRef<str>) -> Self
pub fn name(self, value: impl AsRef<str>) -> Self
When used in a template, named items are created in the output figure in
addition to any items the figure already has in this array. You can
modify these items in the output figure by making your own item with
templateitemname
matching this name
alongside your modifications
(including visible: false
or enabled: false
to hide it). Has no
effect outside of a template.
sourcepub fn template_item_name(self, value: impl AsRef<str>) -> Self
pub fn template_item_name(self, value: impl AsRef<str>) -> Self
Used to refer to a named item in this array in the template. Named items
from the template will be created even without a matching item in
the input figure, but you can modify one by making an item with
templateitemname
matching its name
, alongside your modifications
(including visible: false
or enabled: false
to hide it). If there is
no template or no matching item, this item will be hidden unless you
explicitly show it with visible: true
.
source§impl Annotation
impl Annotation
Trait Implementations§
source§impl Clone for Annotation
impl Clone for Annotation
source§fn clone(&self) -> Annotation
fn clone(&self) -> Annotation
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more