voronoiplot
|
Страница в процессе перевода. |
#
Makie.voronoiplot — Function
voronoiplot(x, y, values; kwargs...)
voronoiplot(values; kwargs...)
voronoiplot(x, y; kwargs...)
voronoiplot(positions; kwargs...)
voronoiplot(vorn::VoronoiTessellation; kwargs...)
Генерирует и строит мозаичную диаграмму Вороного на основе данных типа heatmap или точечных данных. Мозаику также можно передать напрямую как VoronoiTessellation из DelaunayTriangulation.jl.
Тип графика
Псевдоним типа графика для функции voronoiplot — Voronoiplot.
Примеры
voronoiplot генерирует ячейку для каждой переданной позиции, как и heatmap, однако форма ячеек может быть не только прямоугольной. Его можно вызвать с основанными на точках (как scatter или lines) или подобными heatmap входными данными.
using CairoMakie
using Random
Random.seed!(1234)
f = Figure(size=(1200, 450))
ax = Axis(f[1, 1])
voronoiplot!(ax, rand(Point2f, 50))
ax = Axis(f[1, 2])
voronoiplot!(ax, rand(10, 10), rand(10, 10), rand(10, 10))
f
Для генерации ячеек voronoiplot использует мозаичную диаграмму Вороного из пакета DelaunayTriangulation.jl. Это можно сделать самостоятельно и напрямую построить возвращаемый объект VoronoiTessellation.
using CairoMakie
using DelaunayTriangulation
using Random
Random.seed!(1234)
points = rand(2, 50)
tri = triangulate(points)
vorn = voronoi(tri)
f, ax, tr = voronoiplot(vorn)
f
В случае со стандартными мозаичными диаграммами неограниченные многоугольники обрезаются по ограничивающему прямоугольнику, определяемому автоматически по умолчанию, или по заданной пользователем форме обрезки (прямоугольник или круг). Автоматический ограничивающий прямоугольник определяется ограничивающим прямоугольником генераторов тесселяции (то есть предоставленных точек), расширенным на некоторый коэффициент unbounded_edge_extension_factor (по умолчанию 0.1), пропорциональный длинам сторон прямоугольника.
using CairoMakie
using DelaunayTriangulation
using Random
Random.seed!(1234)
z = LinRange(0, 1, 250) .* exp.(LinRange(0, 16pi, 250) .* im)
f, ax, tr = voronoiplot(real(z), imag(z), unbounded_edge_extension_factor = 0.4, markersize = 7)
f
using CairoMakie
using DelaunayTriangulation
using Random
Random.seed!(1234)
x = LinRange(0, 16pi, 50)
y = sin.(x)
bb = BBox(-1, 16pi + 1, -30, 30) # (xmin, xmax, ymin, ymax)
f, ax, tr = voronoiplot(x, y, show_generators=false,
clip=bb, color=:white, strokewidth=2)
f
using CairoMakie
using DelaunayTriangulation
using Random
Random.seed!(1234)
points = [(0.0, 0.0), (1.0, 0.0), (1.0, 1.0), (0.0, 1.0)]
tri = triangulate(points)
refine!(tri; max_area = 0.001)
vorn = voronoi(tri, clip = true)
f, ax, tr = voronoiplot(vorn, show_generators = true, markersize = 13, marker = 'x')
f
using CairoMakie
using DelaunayTriangulation
using Random
Random.seed!(1234)
angles = range(0, 2pi, length = 251)[1:end-1]
x = cos.(angles)
y = sin.(angles)
points = tuple.(x, y)
tri = triangulate(points)
refine!(tri; max_area = 0.001)
vorn = voronoi(tri, clip = true)
smooth_vorn = centroidal_smooth(vorn)
f, ax, tr = voronoiplot(smooth_vorn, show_generators=false)
f
Атрибуты
alpha
Значение по умолчанию: 1.0
Альфа-значение цветовой карты или атрибута color. Несколько букв, таких как в plot(alpha=0.2, color=(:red, 0.5), будут умножены.
clip
Значение по умолчанию: automatic
Задает область отсечения для сгенерированных полигонов, которая может быть Rect2 (или BBox), Tuple с записями (xmin, xmax, ymin, ymax) или как Circle. Все, что выходит за пределы указанной области, будет удалено. Если clip не задан, он определяется автоматически с помощью unbounded_edge_extension_factor как Rect.
color
Значение по умолчанию: automatic
Задает цвет полигонов. Если automatic, полигоны будут индивидуально раскрашены в соответствии с цветовой картой.
colormap
Значение по умолчанию: @inherit colormap :viridis
Устанавливает цветовую схему, которая выбирается для числовых значений. colors. PlotUtils.cgrad(...), Makie.Reverse(any_colormap) также можно использовать любой символ из ColorBrewer или PlotUtils. Чтобы просмотреть все доступные цветовые градиенты, вы можете позвонить по телефону Makie.available_gradients().
colorrange
Значение по умолчанию: automatic
Значения, представляющие начальную и конечную точки colormap.
colorscale
Значение по умолчанию: identity
Функция преобразования цвета. Может быть любой функцией, но хорошо работает только в сочетании с Colorbar для identity, log, log2, log10, sqrt, logit, Makie.pseudolog10 и Makie.Symlog10.