poly

poly(vertices, indices; kwargs...)
poly(points; kwargs...)
poly(shape; kwargs...)
poly(mesh; kwargs...)              

Plots a polygon based on the arguments given. When vertices and indices are given, it functions similarly to mesh . When points are given, it draws one polygon that connects all the points in order. When a shape is given (essentially anything decomposable by GeometryBasics ), it will plot decompose(shape) .

poly(coordinates, connectivity; kwargs...)              

Plots polygons, which are defined by coordinates (the coordinates of the vertices) and connectivity (the edges between the vertices).

Attributes

Specific to Poly

  • lowclip::Union{Nothing, Symbol, <:Colorant} = nothing sets a color for any value below the colorrange.

  • highclip::Union{Nothing, Symbol, <:Colorant} = nothing sets a color for any value above the colorrange.

  • strokecolor::Union{Symbol, <:Colorant} = :black sets the color of the outline around a marker.

  • strokewidth::Real = 0 sets the width of the outline around a marker.

  • linestyle::Union{Nothing, Symbol, Vector} = nothing sets the pattern of the line (e.g. :solid , :dot , :dashdot )

Generic

  • visible::Bool = true sets whether the plot will be rendered or not.

  • overdraw::Bool = false sets whether the plot will draw over other plots. This specifically means ignoring depth checks in GL backends.

  • transparency::Bool = false adjusts how the plot deals with transparency. In GLMakie transparency = true results in using Order Independent Transparency.

  • fxaa::Bool = true adjusts whether the plot is rendered with fxaa (anti-aliasing).

  • inspectable::Bool = true sets whether this plot should be seen by DataInspector .

  • color is set by the plot.

  • colormap::Union{Symbol, Vector{<:Colorant}} = [:black, :white sets the colormap that is sampled for numeric color s.

  • colorrange::Tuple{<:Real, <:Real} sets the values representing the start and end points of colormap .

  • nan_color::Union{Symbol, <:Colorant} = RGBAf(0,0,0,0) sets a replacement color for color = NaN .

  • space::Symbol = :data sets the transformation space for the position of the image. See Makie.spaces() for possible inputs.

  • cycle::Vector{Symbol} = [:color => :patchcolor] sets which attributes to cycle when creating multiple plots.

  • shading = false enables lighting.

Examples

using CairoMakie
using Makie.GeometryBasics


f = Figure()
Axis(f[1, 1])

poly!(Point2f[(0, 0), (2, 0), (3, 1), (1, 1)], color = :red, strokecolor = :black, strokewidth = 1)

f          

using CairoMakie
using Makie.GeometryBasics


f = Figure()
Axis(f[1, 1])

# polygon with hole
p = Polygon(
    Point2f[(0, 0), (2, 0), (3, 1), (1, 1)],
    [Point2f[(0.75, 0.25), (1.75, 0.25), (2.25, 0.75), (1.25, 0.75)]]
)

poly!(p, color = :blue)

f          

using CairoMakie
using Makie.GeometryBasics


f = Figure()
Axis(f[1, 1])

# vector of shapes
poly!(
    [Rect(i, j, 0.75, 0.5) for i in 1:5 for j in 1:3],
    color = 1:15,
    colormap = :heat
)

f          

using CairoMakie
using Makie.GeometryBasics


f = Figure()
Axis(f[1, 1], aspect = DataAspect())

# shape decomposition
poly!(Circle(Point2f(0, 0), 15f0), color = :pink)

f          

using CairoMakie
using Makie.GeometryBasics


f = Figure()
Axis(f[1, 1]; backgroundcolor = :gray15)

# vector of polygons
ps = [Polygon(rand(Point2f, 3) .+ Point2f(i, j))
    for i in 1:5 for j in 1:10]

poly!(ps, color = rand(RGBf, length(ps)))

f