Blocks
            
              Blocks
            
            are objects which can be added to a
            
              Figure
            
            or
            
              Scene
            
            and have their location and size controlled by a
            
              GridLayout
            
            . In of itself, a
            
              Block
            
            is an abstract type. A
            
              Figure
            
            has its own internal
            
              GridLayout
            
            and therefore offers simplified syntax for adding blocks to it. If you want to work with a bare
            
              Scene
            
            , you can attach a
            
              GridLayout
            
            to its pixel area.
          
Note
              A layout only controls an object's position or bounding box. A
              
                Block
              
              can be controlled by the GridLayout of a Figure but not be added as a visual to the Figure. A
              
                Block
              
              can also be added to a Scene without being inside any GridLayout, if you specify the bounding box yourself.
            
            
              Adding to a
              
                Figure
              
            
          
          
            Here's one way to add a
            
              Block
            
            , in this case an
            
              Axis
            
            , to a Figure.
          
using CairoMakie
f = Figure()
ax = Axis(f[1, 1])
f          
          
          
          Specifying a boundingbox directly
            Sometimes you just want to place a
            
              Block
            
            in a specific location, without it being controlled by a dynamic layout. You can do this by setting the
            
              bbox
            
            parameter, which is usually controlled by the layout, manually. The boundingbox should be a 2D
            
              Rect
            
            , and can also be an Observable if you plan to change it dynamically. The function
            
              BBox
            
            creates an
            
              Rect2f
            
            , but instead of passing origin and widths, you pass left, right, bottom and top boundaries directly.
          
Here's an example where two axes are placed manually:
using CairoMakie
f = Figure()
Axis(f, bbox = BBox(100, 300, 100, 500), title = "Axis 1")
Axis(f, bbox = BBox(400, 700, 200, 400), title = "Axis 2")
f          
          
          
          Deleting blocks
            To remove blocks from their layout and the figure or scene, use
            
              delete!(block)
            
            .
          
These docs were autogenerated using Makie: v0.18.4, GLMakie: v0.7.4, CairoMakie: v0.9.4, WGLMakie: v0.7.4