Exported

AbstractPlotting.MakieLayout.LAxisType

LAxis has the following attributes:

alignmode
Default: Inside()
The align mode of the axis in its parent GridLayout.

aspect
Default: nothing
The forced aspect ratio of the axis. nothing leaves the axis unconstrained, DataAspect() forces the same ratio as the ratio in data limits between x and y axis, AxisAspect(ratio) sets a manual ratio.

autolimitaspect
Default: nothing
Constrains the data aspect ratio (nothing leaves the ratio unconstrained).

backgroundcolor
Default: :white
The background color of the axis.

bottomspinecolor
Default: :black
The color of the bottom axis spine.

bottomspinevisible
Default: true
Controls if the bottom axis spine is visible.

flip_ylabel
Default: false
Controls if the ylabel's rotation is flipped.

halign
Default: :center
The horizontal alignment of the axis within its suggested bounding box.

height
Default: nothing
The height of the axis.

leftspinecolor
Default: :black
The color of the left axis spine.

leftspinevisible
Default: true
Controls if the left axis spine is visible.

panbutton
Default: AbstractPlotting.Mouse.right
The button for panning.

rightspinecolor
Default: :black
The color of the right axis spine.

rightspinevisible
Default: true
Controls if the right axis spine is visible.

spinewidth
Default: 1.0
The width of the axis spines.

targetlimits
Default: BBox(0, 100, 0, 100)
no description

tellheight
Default: true
Controls if the parent layout can adjust to this element's height

tellwidth
Default: true
Controls if the parent layout can adjust to this element's width

title
Default: " "
The axis title string.

titlealign
Default: :center
The horizontal alignment of the title.

titlefont
Default: lift_parent_attribute(scene, :font, "DejaVu Sans")
The font family of the title.

titlegap
Default: 10.0
The gap between axis and title.

titlesize
Default: lift_parent_attribute(scene, :fontsize, 20.0f0)
The title's font size.

titlevisible
Default: true
Controls if the title is visible.

topspinecolor
Default: :black
The color of the top axis spine.

topspinevisible
Default: true
Controls if the top axis spine is visible.

valign
Default: :center
The vertical alignment of the axis within its suggested bounding box.

width
Default: nothing
The width of the axis.

xautolimitmargin
Default: (0.05f0, 0.05f0)
The relative margins added to the autolimits in x direction.

xaxisposition
Default: :bottom
The position of the x axis (:bottom or :top).

xgridcolor
Default: RGBAf0(0, 0, 0, 0.1)
The color of the x grid lines.

xgridstyle
Default: nothing
The linestyle of the x grid lines.

xgridvisible
Default: true
Controls if the x grid lines are visible.

xgridwidth
Default: 1.0
The width of the x grid lines.

xlabel
Default: " "
The xlabel string.

xlabelcolor
Default: RGBf0(0, 0, 0)
The color of the xlabel.

xlabelfont
Default: lift_parent_attribute(scene, :font, "DejaVu Sans")
The font family of the xlabel.

xlabelpadding
Default: 15.0
The padding between the xlabel and the ticks or axis.

xlabelsize
Default: lift_parent_attribute(scene, :fontsize, 20.0f0)
The font size of the xlabel.

xlabelvisible
Default: true
Controls if the xlabel is visible.

xpankey
Default: AbstractPlotting.Keyboard.x
The key for limiting panning to the x direction.

xpanlock
Default: false
Locks interactive panning in the x direction.

xreversed
Default: false
Controls if the x axis goes rightwards (false) or leftwards (true)

xtickalign
Default: 0.0
The alignment of the xtick marks relative to the axis spine (0 = out, 1 = in).

xtickcolor
Default: RGBf0(0, 0, 0)
The color of the xtick marks.

xtickformat
Default: AbstractPlotting.automatic
Format for xticks.

xticklabelalign
Default: (:center, :top)
The horizontal and vertical alignment of the xticklabels.

xticklabelcolor
Default: RGBf0(0, 0, 0)
The color of xticklabels.

xticklabelfont
Default: lift_parent_attribute(scene, :font, "DejaVu Sans")
The font family of the xticklabels.

xticklabelpad
Default: 5.0
The space between xticks and xticklabels.

xticklabelrotation
Default: 0.0
The counterclockwise rotation of the xticklabels in radians.

xticklabelsize
Default: lift_parent_attribute(scene, :fontsize, 20.0f0)
The font size of the xticklabels.

xticklabelspace
Default: AbstractPlotting.automatic
The space reserved for the xticklabels.

xticklabelsvisible
Default: true
Controls if the xticklabels are visible.

xticks
Default: AbstractPlotting.automatic
The xticks.

xticksize
Default: 10.0
The size of the xtick marks.

xticksvisible
Default: true
Controls if the xtick marks are visible.

xtickwidth
Default: 1.0
The width of the xtick marks.

xtrimspine
Default: false
Controls if the x spine is limited to the furthest tick marks or not.

xzoomkey
Default: AbstractPlotting.Keyboard.x
The key for limiting zooming to the x direction.

xzoomlock
Default: false
Locks interactive zooming in the x direction.

yautolimitmargin
Default: (0.05f0, 0.05f0)
The relative margins added to the autolimits in y direction.

yaxisposition
Default: :left
The position of the y axis (:left or :right).

ygridcolor
Default: RGBAf0(0, 0, 0, 0.1)
The color of the y grid lines.

ygridstyle
Default: nothing
The linestyle of the y grid lines.

ygridvisible
Default: true
Controls if the y grid lines are visible.

ygridwidth
Default: 1.0
The width of the y grid lines.

ylabel
Default: " "
The ylabel string.

ylabelcolor
Default: RGBf0(0, 0, 0)
The color of the ylabel.

ylabelfont
Default: lift_parent_attribute(scene, :font, "DejaVu Sans")
The font family of the ylabel.

ylabelpadding
Default: 15.0
The padding between the ylabel and the ticks or axis.

ylabelsize
Default: lift_parent_attribute(scene, :fontsize, 20.0f0)
The font size of the ylabel.

ylabelvisible
Default: true
Controls if the ylabel is visible.

ypankey
Default: AbstractPlotting.Keyboard.y
The key for limiting panning to the y direction.

ypanlock
Default: false
Locks interactive panning in the y direction.

yreversed
Default: false
Controls if the y axis goes upwards (false) or downwards (true)

ytickalign
Default: 0.0
The alignment of the ytick marks relative to the axis spine (0 = out, 1 = in).

ytickcolor
Default: RGBf0(0, 0, 0)
The color of the ytick marks.

ytickformat
Default: AbstractPlotting.automatic
Format for yticks.

yticklabelalign
Default: (:right, :center)
The horizontal and vertical alignment of the yticklabels.

yticklabelcolor
Default: RGBf0(0, 0, 0)
The color of yticklabels.

yticklabelfont
Default: lift_parent_attribute(scene, :font, "DejaVu Sans")
The font family of the yticklabels.

yticklabelpad
Default: 5.0
The space between yticks and yticklabels.

yticklabelrotation
Default: 0.0
The counterclockwise rotation of the yticklabels in radians.

yticklabelsize
Default: lift_parent_attribute(scene, :fontsize, 20.0f0)
The font size of the yticklabels.

yticklabelspace
Default: AbstractPlotting.automatic
The space reserved for the yticklabels.

yticklabelsvisible
Default: true
Controls if the yticklabels are visible.

yticks
Default: AbstractPlotting.automatic
The yticks.

yticksize
Default: 10.0
The size of the ytick marks.

yticksvisible
Default: true
Controls if the ytick marks are visible.

ytickwidth
Default: 1.0
The width of the ytick marks.

ytrimspine
Default: false
Controls if the y spine is limited to the furthest tick marks or not.

yzoomkey
Default: AbstractPlotting.Keyboard.y
The key for limiting zooming to the y direction.

yzoomlock
Default: false
Locks interactive zooming in the y direction.

AbstractPlotting.MakieLayout.LAxisMethod
LAxis(parent::Scene; bbox = nothing, kwargs...)

Creates an LAxis object in the parent Scene which consists of a child scene with orthographic projection for 2D plots and axis decorations that live in the parent.

AbstractPlotting.MakieLayout.LButtonType

LButton has the following attributes:

alignmode
Default: Inside()
The align mode of the button in its parent GridLayout.

buttoncolor
Default: RGBf0(0.9, 0.9, 0.9)
The color of the button.

buttoncolor_active
Default: COLOR_ACCENT[]
The color of the button when the mouse clicks the button.

buttoncolor_hover
Default: COLOR_ACCENT_DIMMED[]
The color of the button when the mouse hovers over the button.

clicks
Default: 0
The number of clicks that have been registered by the button.

cornerradius
Default: 4
The radius of the rounded corners of the button.

cornersegments
Default: 10
The number of poly segments used for each rounded corner.

font
Default: lift_parent_attribute(scene, :font, "DejaVu Sans")
The font family of the button label.

halign
Default: :center
The horizontal alignment of the button in its suggested boundingbox

height
Default: Auto()
The height setting of the button.

label
Default: "Button"
The text of the button label.

labelcolor
Default: :black
The color of the label.

labelcolor_active
Default: :white
The color of the label when the mouse clicks the button.

labelcolor_hover
Default: :black
The color of the label when the mouse hovers over the button.

padding
Default: (10.0f0, 10.0f0, 10.0f0, 10.0f0)
The extra space added to the sides of the button label's boundingbox.

strokecolor
Default: :transparent
The color of the button border.

strokewidth
Default: 2.0
The line width of the button border.

tellheight
Default: true
Controls if the parent layout can adjust to this element's height

tellwidth
Default: true
Controls if the parent layout can adjust to this element's width

textsize
Default: lift_parent_attribute(scene, :fontsize, 20.0f0)
The font size of the button label.

valign
Default: :center
The vertical alignment of the button in its suggested boundingbox

width
Default: Auto()
The width setting of the button.

AbstractPlotting.MakieLayout.LColorbarType

LColorbar has the following attributes:

alignmode
Default: Inside()
The align mode of the colorbar in its parent GridLayout.

bottomspinecolor
Default: RGBf0(0, 0, 0)
The color of the bottom spine.

bottomspinevisible
Default: true
Controls if the bottom spine is visible.

colormap
Default: :viridis
The colormap that the colorbar uses.

flip_vertical_label
Default: false
Flips the colorbar label if the axis is vertical.

flipaxisposition
Default: true
Flips the axis to the right if vertical and to the top if horizontal.

halign
Default: :center
The horizontal alignment of the colorbar in its suggested bounding box.

height
Default: nothing
The height setting of the colorbar.

label
Default: " "
The color bar label string.

labelcolor
Default: RGBf0(0, 0, 0)
The label color.

labelfont
Default: lift_parent_attribute(scene, :font, "DejaVu Sans")
The label font family.

labelpadding
Default: 15.0
The gap between the label and the ticks.

labelsize
Default: lift_parent_attribute(scene, :fontsize, 20.0f0)
The label font size.

labelvisible
Default: true
Controls if the label is visible.

leftspinecolor
Default: RGBf0(0, 0, 0)
The color of the left spine.

leftspinevisible
Default: true
Controls if the left spine is visible.

limits
Default: (0.0f0, 1.0f0)
The range of values depicted in the colorbar.

nsteps
Default: 100
The number of steps in the heatmap underlying the colorbar gradient.

rightspinecolor
Default: RGBf0(0, 0, 0)
The color of the right spine.

rightspinevisible
Default: true
Controls if the right spine is visible.

spinewidth
Default: 1.0
The line width of the spines.

tellheight
Default: true
Controls if the parent layout can adjust to this element's height

tellwidth
Default: true
Controls if the parent layout can adjust to this element's width

tickalign
Default: 0.0
The alignment of the tick marks relative to the axis spine (0 = out, 1 = in).

tickcolor
Default: RGBf0(0, 0, 0)
The color of the tick marks.

tickformat
Default: AbstractPlotting.automatic
Format for ticks.

ticklabelalign
Default: (:left, :center)
The horizontal and vertical alignment of the tick labels.

ticklabelcolor
Default: RGBf0(0, 0, 0)
The color of the tick labels.

ticklabelfont
Default: lift_parent_attribute(scene, :font, "DejaVu Sans")
The font family of the tick labels.

ticklabelpad
Default: 5.0
The gap between tick labels and tick marks.

ticklabelsize
Default: lift_parent_attribute(scene, :fontsize, 20.0f0)
The font size of the tick labels.

ticklabelspace
Default: AbstractPlotting.automatic
The space reserved for the tick labels.

ticklabelsvisible
Default: true
Controls if the tick labels are visible.

ticks
Default: AbstractPlotting.automatic
The ticks.

ticksize
Default: 10.0
The size of the tick marks.

ticksvisible
Default: true
Controls if the tick marks are visible.

tickwidth
Default: 1.0
The line width of the tick marks.

topspinecolor
Default: RGBf0(0, 0, 0)
The color of the top spine.

topspinevisible
Default: true
Controls if the top spine is visible.

valign
Default: :center
The vertical alignment of the colorbar in its suggested bounding box.

vertical
Default: true
Controls if the colorbar is oriented vertically.

width
Default: nothing
The width setting of the colorbar.

AbstractPlotting.MakieLayout.LLegendType

LLegend has the following attributes:

alignmode
Default: Inside()
The align mode of the legend in its parent GridLayout.

bgcolor
Default: :white
The background color of the legend.

colgap
Default: 20
The gap between the label of one legend entry and the patch of the next.

framecolor
Default: :black
The color of the legend border.

framevisible
Default: true
Controls if the legend border is visible.

framewidth
Default: 1.0
The line width of the legend border.

gridshalign
Default: :center
The horizontal alignment of entry groups in their parent GridLayout.

gridsvalign
Default: :center
The vertical alignment of entry groups in their parent GridLayout.

groupgap
Default: 30
The gap between each group and the next.

halign
Default: :center
The horizontal alignment of the legend in its suggested bounding box.

height
Default: Auto()
The height setting of the legend.

label
Default: "undefined"
The default entry label.

labelcolor
Default: :black
The color of the entry labels.

labelfont
Default: lift_parent_attribute(scene, :font, "DejaVu Sans")
The font family of the entry labels.

labelhalign
Default: :left
The horizontal alignment of the entry labels.

labelsize
Default: lift_parent_attribute(scene, :fontsize, 20.0f0)
The font size of the entry labels.

labelvalign
Default: :center
The vertical alignment of the entry labels.

linepoints
Default: [Point2f0(0, 0.5), Point2f0(1, 0.5)]
The default points used for LineElements in normalized coordinates relative to each label patch.

linewidth
Default: 3
The default line width used for LineElements.

margin
Default: (0.0f0, 0.0f0, 0.0f0, 0.0f0)
The additional space between the legend and its suggested boundingbox.

markerpoints
Default: [Point2f0(0.5, 0.5)]
The default marker points used for MarkerElements in normalized coordinates relative to each label patch.

markersize
Default: 12
The default marker size used for MarkerElements.

markerstrokewidth
Default: 1
The default marker stroke width used for MarkerElements.

nbanks
Default: 1
The number of banks in which the legend entries are grouped. Columns if the legend is vertically oriented, otherwise rows.

orientation
Default: :vertical
The orientation of the legend (:horizontal or :vertical).

padding
Default: (10.0f0, 10.0f0, 10.0f0, 10.0f0)
The additional space between the legend content and the border.

patchcolor
Default: :transparent
The color of the patches containing the legend markers.

patchlabelgap
Default: 5
The gap between the patch and the label of each legend entry.

patchsize
Default: (20.0f0, 20.0f0)
The size of the rectangles containing the legend markers.

patchstrokecolor
Default: :transparent
The color of the border of the patches containing the legend markers.

patchstrokewidth
Default: 1.0
The line width of the border of the patches containing the legend markers.

polypoints
Default: [Point2f0(0, 0), Point2f0(1, 0), Point2f0(1, 1), Point2f0(0, 1)]
The default poly points used for PolyElements in normalized coordinates relative to each label patch.

polystrokewidth
Default: 1
The default poly stroke width used for PolyElements.

rowgap
Default: 4
The gap between the entry rows.

tellheight
Default: false
Controls if the parent layout can adjust to this element's height

tellwidth
Default: true
Controls if the parent layout can adjust to this element's width

titlefont
Default: lift_parent_attribute(scene, :font, "DejaVu Sans")
The font family of the legend group titles.

titlegap
Default: 15
The gap between each group title and its group.

titlehalign
Default: :center
The horizontal alignment of the legend group titles.

titleposition
Default: :top
The group title positions relative to their groups. Can be :top or :left.

titlesize
Default: lift_parent_attribute(scene, :fontsize, 20.0f0)
The font size of the legend group titles.

titlevalign
Default: :center
The vertical alignment of the legend group titles.

titlevisible
Default: true
Controls if the legend titles are visible.

valign
Default: :center
The vertical alignment of the legend in its suggested bounding box.

width
Default: Auto()
The width setting of the legend.

AbstractPlotting.MakieLayout.LLegendType
LLegend(
    scene,
    contents::AbstractArray,
    labels::AbstractArray{String},
    title::Optional{String} = nothing;
    kwargs...)

Create a legend from contents and labels where each label is associated to one content element. A content element can be an AbstractPlot, an array of AbstractPlots, a LegendElement, or any other object for which the legendelements method is defined.

AbstractPlotting.MakieLayout.LLegendMethod
LLegend(
    scene,
    contentgroups::AbstractArray{<:AbstractArray},
    labelgroups::AbstractArray{<:AbstractArray},
    titles::AbstractArray{<:Optional{String}};
    kwargs...)

Create a multi-group legend from contentgroups, labelgroups and titles. Each group from contentgroups and labelgroups is associated with one title from titles (a title can be nothing to hide it).

Within each group, each content element is associated with one label. A content element can be an AbstractPlot, an array of AbstractPlots, a LegendElement, or any other object for which the legendelements method is defined.

AbstractPlotting.MakieLayout.LMenuType
LMenu(parent::Scene; bbox = nothing, kwargs...)

Create a drop-down menu with multiple selectable options. You can pass options with the keyword argument options. Options are given as an iterable of elements. For each element, the option label in the menu is determined with optionstring(element) and the option value with optionvalue(element). These functions can be overloaded for custom types. The default is that elements which are AbstractStrings are both label and value, and all other elements are expected to have two entries, where the first is the label and the second is the value.

When an item is selected in the menu, the menu's selection attribute is set to optionvalue(selected_element).

If the menu is located close to the lower scene border, you can change its open direction to direction = :up.

Example

Menu with string entries:

menu1 = LMenu(scene, options = ["first", "second", "third"])

Menu with two-element entries, label and function:

funcs = [sin, cos, tan]
labels = ["Sine", "Cosine", "Tangens"]

menu2 = LMenu(scene, options = zip(labels, funcs))

Lifting on the selection value:

on(menu2.selection) do func
    # do something with the selected function
end

LMenu has the following attributes:

alignmode
Default: Inside()
The alignment of the menu in its suggested bounding box.

cell_color_active
Default: COLOR_ACCENT[]
Cell color when active

cell_color_hover
Default: COLOR_ACCENT_DIMMED[]
Cell color when hovered

cell_color_inactive_even
Default: RGBf0(0.97, 0.97, 0.97)
Cell color when inactive even

cell_color_inactive_odd
Default: RGBf0(0.97, 0.97, 0.97)
Cell color when inactive odd

direction
Default: :down
The opening direction of the menu (:up or :down)

dropdown_arrow_color
Default: (:black, 0.2)
Color of the dropdown arrow

dropdown_arrow_size
Default: 12px
Size of the dropdown arrow

halign
Default: :center
The horizontal alignment of the menu in its suggested bounding box.

height
Default: Auto()
The height setting of the menu.

i_selected
Default: 1
Index of selected item

is_open
Default: false
Is the menu showing the available options

options
Default: ["no options"]
The list of options selectable in the menu. This can be any iterable of a mixture of strings and containers with one string and one other value. If an entry is just a string, that string is both label and selection. If an entry is a container with one string and one other value, the string is the label and the other value is the selection.

selection
Default: nothing
Selected item value

selection_cell_color_inactive
Default: RGBf0(0.94, 0.94, 0.94)
Selection cell color when inactive

tellheight
Default: true
Controls if the parent layout can adjust to this element's height

tellwidth
Default: true
Controls if the parent layout can adjust to this element's width

textcolor
Default: :black
Color of entry texts

textpadding
Default: (10, 10, 10, 10)
Padding of entry texts

textsize
Default: lift_parent_attribute(scene, :fontsize, 20.0f0)
Font size of the cell texts

valign
Default: :center
The vertical alignment of the menu in its suggested bounding box.

width
Default: nothing
The width setting of the menu.

AbstractPlotting.MakieLayout.LRectType

LRect has the following attributes:

alignmode
Default: Inside()
The align mode of the rectangle in its parent GridLayout.

color
Default: RGBf0(0.9, 0.9, 0.9)
The color of the rectangle.

halign
Default: :center
The horizontal alignment of the rectangle in its suggested boundingbox

height
Default: nothing
The height setting of the rectangle.

padding
Default: (0.0f0, 0.0f0, 0.0f0, 0.0f0)
The extra space added to the sides of the rectangle boundingbox.

strokecolor
Default: RGBf0(0, 0, 0)
The color of the border.

strokevisible
Default: true
Controls if the border of the rectangle is visible.

strokewidth
Default: 1.0
The line width of the rectangle's border.

tellheight
Default: true
Controls if the parent layout can adjust to this element's height

tellwidth
Default: true
Controls if the parent layout can adjust to this element's width

valign
Default: :center
The vertical alignment of the rectangle in its suggested boundingbox

visible
Default: true
Controls if the rectangle is visible.

width
Default: nothing
The width setting of the rectangle.

AbstractPlotting.MakieLayout.LSceneType

LScene has the following attributes:

alignmode
Default: Inside()
The alignment of the scene in its suggested bounding box.

halign
Default: :center
The horizontal alignment of the scene in its suggested bounding box.

height
Default: nothing
The height setting of the scene.

tellheight
Default: true
Controls if the parent layout can adjust to this element's height

tellwidth
Default: true
Controls if the parent layout can adjust to this element's width

valign
Default: :center
The vertical alignment of the scene in its suggested bounding box.

width
Default: nothing
The width setting of the scene.

AbstractPlotting.MakieLayout.LSliderType

LSlider has the following attributes:

alignmode
Default: Inside()
The align mode of the slider in its parent GridLayout.

buttoncolor_inactive
Default: RGBf0(1, 1, 1)
The color of the button when it is not interacted with.

buttonradius
Default: 9.0
The radius of the slider button.

buttonstrokewidth
Default: 4.0
The line width of the slider button's border.

color_active
Default: COLOR_ACCENT[]
The color of the slider when the mouse clicks and drags the slider.

color_active_dimmed
Default: COLOR_ACCENT_DIMMED[]
The color of the slider when the mouse hovers over it.

color_inactive
Default: RGBf0(0.9, 0.9, 0.9)
The color of the slider when it is not interacted with.

halign
Default: :center
The horizontal alignment of the slider in its suggested bounding box.

height
Default: Auto()
The height setting of the slider.

horizontal
Default: true
Controls if the slider has a horizontal orientation or not.

linewidth
Default: 4.0
The line width of the main slider line.

range
Default: 0:10
The range of values that the slider can pick from.

startvalue
Default: 0
The start value of the slider or the value that is closest in the slider range.

tellheight
Default: true
Controls if the parent layout can adjust to this element's height

tellwidth
Default: true
Controls if the parent layout can adjust to this element's width

valign
Default: :center
The vertical alignment of the slider in its suggested bounding box.

value
Default: 0
The current value of the slider.

width
Default: nothing
The width setting of the slider.

AbstractPlotting.MakieLayout.LTextType

LText has the following attributes:

alignmode
Default: Inside()
The align mode of the text in its parent GridLayout.

color
Default: RGBf0(0, 0, 0)
The color of the text.

font
Default: lift_parent_attribute(scene, :font, "DejaVu Sans")
The font family of the text.

halign
Default: :center
The horizontal alignment of the text in its suggested boundingbox

height
Default: Auto()
The height setting of the text.

padding
Default: (0.0f0, 0.0f0, 0.0f0, 0.0f0)
The extra space added to the sides of the text boundingbox.

rotation
Default: 0.0
The counterclockwise rotation of the text in radians.

tellheight
Default: true
Controls if the parent layout can adjust to this element's height

tellwidth
Default: true
Controls if the parent layout can adjust to this element's width

text
Default: "Text"
The displayed text string.

textsize
Default: lift_parent_attribute(scene, :fontsize, 20.0f0)
The font size of the text.

valign
Default: :center
The vertical alignment of the text in its suggested boundingbox

visible
Default: true
Controls if the text is visible.

width
Default: Auto()
The width setting of the text.

AbstractPlotting.MakieLayout.LTextboxType
LTextbox(parent::Scene; bbox = nothing, kwargs...)

LTextbox has the following attributes: alignmode
Default: Inside()
The alignment of the textbox in its suggested bounding box.

bordercolor
Default: RGBf0(0.8, 0.8, 0.8)
Color of the box border.

bordercolor_focused
Default: COLOR_ACCENT[]
Color of the box border when focused.

bordercolor_focused_invalid
Default: RGBf0(1, 0, 0)
Color of the box border when focused and invalid.

bordercolor_hover
Default: COLOR_ACCENT_DIMMED[]
Color of the box border when hovered.

borderwidth
Default: 2.0
Width of the box border.

boxcolor
Default: :transparent
Color of the box.

boxcolor_focused
Default: :transparent
Color of the box when focused.

boxcolor_focused_invalid
Default: RGBAf0(1, 0, 0, 0.3)
Color of the box when focused.

boxcolor_hover
Default: :transparent
Color of the box when hovered.

cornerradius
Default: 8
Corner radius of text box.

cornersegments
Default: 20
Corner segments of one rounded corner.

cursorcolor
Default: :transparent
The color of the cursor.

defocus_on_submit
Default: true
Controls if the textbox is defocused when a string is submitted.

displayed_string
Default: nothing
The currently displayed string (for internal use).

focused
Default: false
If the textbox is focused and receives text input.

font
Default: lift_parent_attribute(scene, :font, "DejaVu Sans")
Font family.

halign
Default: :center
The horizontal alignment of the textbox in its suggested bounding box.

height
Default: Auto()
The height setting of the textbox.

placeholder
Default: "Click to edit..."
A placeholder text that is displayed when the saved string is nothing.

reset_on_defocus
Default: false
Controls if the displayed text is reset to the stored text when defocusing the textbox without submitting.

restriction
Default: nothing
Restricts the allowed unicode input via is_allowed(char, restriction).

stored_string
Default: nothing
The currently stored string.

tellheight
Default: true
Controls if the parent layout can adjust to this element's height.

tellwidth
Default: true
Controls if the parent layout can adjust to this element's width.

textcolor
Default: :black
Text color.

textcolor_placeholder
Default: RGBf0(0.5, 0.5, 0.5)
Text color for the placeholder.

textpadding
Default: (10, 10, 10, 10)
Padding of the text against the box.

textsize
Default: lift_parent_attribute(scene, :fontsize, 20.0f0)
Text size.

validator
Default: str->begin #= /juliateam/.julia/packages/AbstractPlotting/T806p/src/makielayout/defaultattributes.jl:814 =# true end
Validator that is called with validate_textbox(string, validator) to determine if the current string is valid. Can by default be a RegEx that needs to match the complete string, or a function taking a string as input and returning a Bool. If the validator is a type T (for example Float64), validation will be tryparse(string, T).

valign
Default: :center
The vertical alignment of the textbox in its suggested bounding box.

width
Default: Auto()
The width setting of the textbox.

AbstractPlotting.MakieLayout.LToggleType

LToggle has the following attributes:

active
Default: false
Indicates if the toggle is active or not.

alignmode
Default: Inside()
The align mode of the toggle in its parent GridLayout.

buttoncolor
Default: RGBf0(1, 1, 1)
The color of the toggle button.

cornersegments
Default: 10
The number of poly segments in each rounded corner.

framecolor_active
Default: COLOR_ACCENT[]
The color of the border when the toggle is active.

framecolor_inactive
Default: RGBf0(0.9, 0.9, 0.9)
The color of the border when the toggle is inactive.

halign
Default: :center
The horizontal alignment of the toggle in its suggested bounding box.

height
Default: 30
The height of the toggle.

rimfraction
Default: 0.25
The border width as a fraction of the toggle height

tellheight
Default: true
Controls if the parent layout can adjust to this element's height

tellwidth
Default: true
Controls if the parent layout can adjust to this element's width

toggleduration
Default: 0.2
The duration of the toggle animation.

valign
Default: :center
The vertical alignment of the toggle in its suggested bounding box.

width
Default: 60
The width of the toggle.

AbstractPlotting.MakieLayout.addmousestate!Method
addmousestate!(scene, elements...)

Returns an Observable{MouseState} which is triggered by all mouse interactions with the scene and optionally restricted to all given plot objects in elements.

To react to mouse events, use the onmouse... handlers.

Example:

mousestate = addmousestate!(scene, scatterplot)

onmouseleftclick(mousestate) do state
    # do something with the mousestate
end
AbstractPlotting.MakieLayout.autolimits!Method
autolimits!(la::LAxis)

Set the target limits of la to an automatically determined rectangle, that depends on the data limits of all plot objects in the axis, as well as the autolimit margins for x and y axis.

AbstractPlotting.MakieLayout.hidespines!Method
hidespines!(la::LAxis, spines::Symbol... = (:l, :r, :b, :t)...)

Hide all specified axis spines. Hides all spines by default, otherwise choose with the symbols :l, :r, :b and :t.

AbstractPlotting.MakieLayout.labelslider!Method
labelslider!(scene, label, range; format = string, sliderkw = Dict(), labelkw = Dict(), valuekw = Dict(), layoutkw...)

Construct a horizontal GridLayout with a label, a slider and a value label in scene.

Returns a NamedTuple:

(slider = slider, label = label, valuelabel = valuelabel, layout = layout)

Specify a format function for the value label with the format keyword. The slider is forwarded the keywords from sliderkw. The label is forwarded the keywords from labelkw. The value label is forwarded the keywords from valuekw. All other keywords are forwarded to the GridLayout.

Example:

ls = labelslider!(scene, "Voltage:", 0:10; format = x -> "$(x)V")
layout[1, 1] = ls.layout
AbstractPlotting.MakieLayout.layoutsceneFunction
layoutscene(padding = 30; kwargs...)

Create a Scene in campixel! mode and a GridLayout aligned to the scene's pixel area with alignmode = Outside(padding).

AbstractPlotting.MakieLayout.layoutsceneFunction
layoutscene(nrows::Int, ncols::Int, padding = 30; kwargs...)

Create a Scene in campixel! mode and a GridLayout aligned to the scene's pixel area with size nrows x ncols and alignmode = Outside(padding).

AbstractPlotting.MakieLayout.limits!Method
limits!(ax::LAxis, x1, x2, y1, y2)

Set the axis x-limits to x1 and x2 and the y-limits to y1 and y2. If limits are ordered high-low, this reverses the axis orientation.

AbstractPlotting.MakieLayout.limits!Method
limits!(ax::LAxis, xlims, ylims)

Set the axis limits to xlims and ylims. If limits are ordered high-low, this reverses the axis orientation.

AbstractPlotting.MakieLayout.tightlimits!Method
tightlimits!(la::LAxis, sides::Union{Left, Right, Bottom, Top}...)

Sets the autolimit margins to zero on all given sides.

Example:

tightlimits!(laxis, Bottom())

Unexported

AbstractPlotting.MakieLayout.MouseStateType
MouseState{T<:AbstractMouseState}

Describes a mouse state change. Fields:

  • typ: Symbol describing the mouse state
  • t: Time of the event
  • pos: Mouse position
  • tprev: Time of previous event
  • prev: Previous mouse position
AbstractPlotting.MakieLayout.get_ticklabelsMethod
get_ticklabels(::AbstractPlotting.Automatic, tup::Tuple{<:Any, <:Any}, values)

Returns the second entry of tup, which should be an iterable of strings, as the tick labels for values.

AbstractPlotting.MakieLayout.get_tickvaluesMethod
get_tickvalues(tup::Tuple{<:Any, <:Any}, vmin, vmax)

Calls get_tickvalues(tup[1], vmin, vmax) where the first entry of the tuple should contain an iterable tick values and the second entry should contain an iterable of the respective labels.

AbstractPlotting.MakieLayout.reset!Method
reset!(tb::LTextbox)

Resets the stored_string of the given LTextbox to nothing without triggering listeners, and resets the LTextbox to the placeholder text.

AbstractPlotting.MakieLayout.set!Method
set!(tb::LTextbox, string::String)

Sets the storedstring of the given LTextbox to string, triggering listeners of `tb.storedstring`.

AbstractPlotting.MakieLayout.timed_ticklabelspace_resetMethod

Keeps the ticklabelspace static for a short duration and then resets it to its previous value. If that value is AbstractPlotting.automatic, the reset will trigger new protrusions for the axis and the layout will adjust. This is so the layout doesn't immediately readjust during interaction, which would let the whole layout jitter around.

AbstractPlotting.MakieLayout.@documented_attributesMacro

Take a sequence of variable definitions with docstrings above each and turn them into Attributes, a Dict of varname => docstring pairs and a Dict of varname => default_value pairs.

Example

attrs, docdict, defaultdict = @documented_attributes begin
    "The width."
    width = 10
    "The height."
    height = 20 + x
end

attrs == Attributes(
    width = 10,
    height = 20
)

docdict == Dict(
    width => "The width.",
    height => "The height."
)

defaultdict == Dict(
    width => "10",
    height => "20 + x"
)