Struct widgetry::widgets::line_plot::LinePlot [−][src]
pub struct LinePlot<X: Axis<X>, Y: Axis<Y>> {
draw: Drawable,
max_x: X,
max_y: Y,
closest: FindClosest<String>,
hovering: Option<Hovering<X, Y>>,
top_left: ScreenPt,
dims: ScreenDims,
unit_fmt: UnitFmt,
}
Fields
draw: Drawable
max_x: X
max_y: Y
closest: FindClosest<String>
hovering: Option<Hovering<X, Y>>
top_left: ScreenPt
dims: ScreenDims
unit_fmt: UnitFmt
Implementations
pub fn new_widget(
ctx: &EventCtx<'_>,
label: &str,
series: Vec<Series<X, Y>>,
opts: PlotOptions<X, Y>,
unit_fmt: UnitFmt
) -> Widget
pub fn new_widget(
ctx: &EventCtx<'_>,
label: &str,
series: Vec<Series<X, Y>>,
opts: PlotOptions<X, Y>,
unit_fmt: UnitFmt
) -> Widget
label
is used to name the actual LinePlot widget. The result of this call can’t be
usefully named
, since the plot is wrapped in some containers for formatting.
pub fn get_hovering(&self) -> Vec<(X, Y)>ⓘ
Programmatically show a tooltip at the given x/y.
Useful (e.g.) when points on the line plot corresponds to a point on the map - as the user hovers on the map you can highlight the corresponding details on the plot.
Trait Implementations
What width and height does the widget occupy? If this changes, be sure to set
redo_layout
to true in event
. Read more
Your widget’s top left corner should be here. Handle mouse events and draw appropriately.
Your chance to react to an event. Any side effects outside of this widget are communicated through the output. Read more
Draw the widget. Be sure to draw relative to the top-left specified by set_pos
.
If a new Panel is being created to replace an older one, all widgets have the chance to preserve state from the previous version. Read more
Restore state from the previous version of this widget, with the same ID. Implementors must downcast. Read more
Auto Trait Implementations
impl<X, Y> RefUnwindSafe for LinePlot<X, Y> where
X: RefUnwindSafe,
Y: RefUnwindSafe,
impl<X, Y> UnwindSafe for LinePlot<X, Y> where
X: UnwindSafe,
Y: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more
type Output = T
type Output = T
Should always be Self