Документация Engee

Справка по API

Индекс

Публичный интерфейс

Спецификации графиков

Основная команда модуля. Используйте plot, чтобы создать новый график, и plot! — чтобы добавить что-либо к существующему графику:

    plot(args...; kw...)                  # создает новое окно графика и устанавливает его в качестве текущего
    plot!(args...; kw...)                 # добавляет к текущему
    plot!(plotobj, args...; kw...)        # добавляет к графику `plotobj`

Существует множество способов передачи данных и множество именованных аргументов. Просто попробуйте, и, скорее всего, все будет работать так, как ожидается. При передаче матриц происходит разбиение по столбцам. Чтобы просмотреть список доступных атрибутов, используйте функцию plotattr(attr), где attr является символом :Series, :Subplot, :Plot или :Axis. Передайте в plotattr любой атрибут в виде строки для поиска его docstring, например plotattr("seriestype").

Расширенная справка

Атрибуты рядов

  • arrow

  • bar_edges

  • bar_position

  • bar_width

  • bins

  • colorbar_entry

  • connections

  • contour_labels

  • contours

  • extra_kwargs

  • fill

  • fill_z

  • fillalpha

  • fillcolor

  • fillrange

  • fillstyle

  • group

  • hover

  • label

  • levels

  • line

  • line_z

  • linealpha

  • linecolor

  • linestyle

  • linewidth

  • marker

  • marker_z

  • markeralpha

  • markercolor

  • markershape

  • markersize

  • markerstrokealpha

  • markerstrokecolor

  • markerstrokestyle

  • markerstrokewidth

  • normalize

  • orientation

  • permute

  • primary

  • quiver

  • ribbon

  • series_annotations

  • seriesalpha

  • seriescolor

  • seriestype

  • showemptybins

  • smooth

  • stride

  • subplot

  • weights

  • x

  • xerror

  • y

  • yerror

  • z

  • z_order

  • zerror

Атрибуты осей

Добавьте в начало этих атрибутов букву оси (x, y или z)

  • axis

  • discrete_values

  • draw_arrow

  • flip

  • foregroundcoloraxis

  • foregroundcolorborder

  • foregroundcolorgrid

  • foregroundcolorguide

  • foregroundcolorminor_grid

  • foregroundcolortext

  • formatter

  • grid

  • gridalpha

  • gridlinewidth

  • gridstyle

  • guide

  • guide_position

  • guidefont

  • guidefontcolor

  • guidefontfamily

  • guidefonthalign

  • guidefontrotation

  • guidefontsize

  • guidefontvalign

  • lims

  • link

  • minorgrid

  • minorgridalpha

  • minorgridlinewidth

  • minorgridstyle

  • minorticks

  • mirror

  • rotation

  • scale

  • showaxis

  • tick_direction

  • tickfont

  • tickfontcolor

  • tickfontfamily

  • tickfonthalign

  • tickfontrotation

  • tickfontsize

  • tickfontvalign

  • ticks

  • unitformat

  • widen

Атрибуты подграфика

  • annotationcolor

  • annotationfontfamily

  • annotationfontsize

  • annotationhalign

  • annotationrotation

  • annotations

  • annotationvalign

  • aspect_ratio

  • backgroundcolorinside

  • backgroundcolorsubplot

  • bottom_margin

  • camera

  • clims

  • color_palette

  • colorbar

  • colorbarcontinuousvalues

  • colorbardiscretevalues

  • colorbar_fontfamily

  • colorbar_formatter

  • colorbar_scale

  • colorbar_tickfontcolor

  • colorbar_tickfontfamily

  • colorbar_tickfonthalign

  • colorbar_tickfontrotation

  • colorbar_tickfontsize

  • colorbar_tickfontvalign

  • colorbar_ticks

  • colorbar_title

  • colorbartitlelocation

  • colorbar_titlefont

  • colorbar_titlefontcolor

  • colorbar_titlefontfamily

  • colorbar_titlefonthalign

  • colorbar_titlefontrotation

  • colorbar_titlefontsize

  • colorbar_titlefontvalign

  • extra_kwargs

  • fontfamily_subplot

  • foregroundcolorsubplot

  • foregroundcolortitle

  • framestyle

  • left_margin

  • legendbackgroundcolor

  • legend_column

  • legend_font

  • legendfontcolor

  • legendfontfamily

  • legendfonthalign

  • legendfontpointsize

  • legendfontrotation

  • legendfontvalign

  • legendforegroundcolor

  • legend_position

  • legend_title

  • legendtitlefont

  • legendtitlefont_color

  • legendtitlefont_family

  • legendtitlefont_halign

  • legendtitlefont_pointsize

  • legendtitlefont_rotation

  • legendtitlefont_valign

  • margin

  • plottitlefont

  • projection

  • projection_type

  • right_margin

  • subplot_index

  • title

  • title_font

  • titlefontcolor

  • titlefontfamily

  • titlefonthalign

  • titlefontrotation

  • titlefontsize

  • titlefontvalign

  • titlelocation

  • top_margin

Атрибуты графика

  • background_color

  • backgroundcoloroutside

  • display_type

  • dpi

  • extra_kwargs

  • extraplotkwargs

  • fontfamily

  • foreground_color

  • htmloutputformat

  • inset_subplots

  • layout

  • link

  • overwrite_figure

  • plot_title

  • plot_titlefontcolor

  • plot_titlefontfamily

  • plot_titlefonthalign

  • plot_titlefontrotation

  • plot_titlefontsize

  • plot_titlefontvalign

  • plot_titleindex

  • plot_titlelocation

  • plot_titlevspan

  • pos

  • show

  • size

  • texoutputstandalone

  • thickness_scaling

  • warnonunsupported

  • window_title

Извлекает подграфик из существующего графика.

Примеры

julia> p1, p2 = plot(1:2), plot(10:20)
julia> pl = plot(p1, p2)  # график, содержащий два подграфика

julia> plot(pl.subplots[1])  # извлекает первый подграфик как отдельный график
julia> plot(pl.subplots[2])  # извлекает второй подграфик как отдельный график
bbox(x, y, w, h [,originargs...])
bbox(layout)

Создает ограничивающий прямоугольник для построения графика

grid(args...; kw...)

Создает макет сетки для подграфиков. Аргументы (args) указывают измерения, например grid(3,2, widths = (0.6,0.4)) создает сетку с тремя строками и двумя столбцами разной ширины.

@layout mat

Создает схему подграфиков из матрицы символов (где подграфики могут занимать несколько строк или столбцов). Точный размер можно получить с помощью фигурных скобок, в противном случае свободное пространство равномерно распределяется между областями построения подграфиков. С помощью символа _ (подчеркивание) можно игнорировать графики в макете (пустые графики).

Примеры

julia> @layout [a b; c]
2×1 Matrix{Any}:
 Any[(label = :a, blank = false) (label = :b, blank = false)]
 (label = :c, blank = false)

julia> @layout [a{0.3w}; b{0.2h}]
2×1 Matrix{Any}:
 (label = :a, width = 0.3, height = :auto)
 (label = :b, width = :auto, height = 0.2)

julia> @layout [_ ° _; ° ° °; ° ° °]
3×3 Matrix{Any}:
 (label = :_, blank = true)   …  (label = :_, blank = true)
 (label = :°, blank = false)     (label = :°, blank = false)
 (label = :°, blank = false)     (label = :°, blank = false)

default(key) returns the current default value for that key.

default(key, value) задает текущее значение по умолчанию для данного ключа.

default(; kw...) задает текущее значение по умолчанию для каждой пары «ключ-значение».

default(plotattributes, key) возвращает ключ из атрибутов графика, если он существует, в противном случае — default(key).

theme(s::Symbol)

Задает цветовую тему для графиков.

Позволяет временно задать бэкенд и настройки по умолчанию для графиков. Параметры применяются только для блока do. Пример:

with(:gr, size=(400,400), type=:histogram) do
  plot(rand(10))
  plot(rand(10))
end
arrow(args...)

Определяет стрелки, применяемые к линиям. Используются аргументы style (:open или :closed), side (:head, :tail или :both), headlength и headwidth.

Возвращает центроид фигуры.

Возвращает точки вершин из объекта Shape или Segments.

font(args...)

Создает шрифт из списка компонентов. Значения могут быть указаны либо как аргументы (которые различаются по типу/значению), либо как именованные аргументы.

Аргументы

  • family: AbstractString. serif, sans-serif или моноширинный.

  • pointsize: целое число. Размер шрифта в точках.

  • halign: символ. Выравнивание по горизонтали (:hcenter, :left или :right).

  • valign: символ. Выравнивание по вертикали (:vcenter, :top или :bottom).

  • rotation: вещественное значение. Угол поворота текста в градусах (используется нецелочисленный тип).

  • color: краситель или символ.

Примеры

julia> font(8)
julia> font(family="serif", halign=:center, rotation=45.0)

Создает фигуру, выбирая точки вокруг единичной окружности. n — количество точек/сторон, offset — начальный угол.

Создает звезду, переплетая точки из внешнего и внутреннего кругов. n — количество лучей.

Получает массив кортежей точек в окружности с радиусом r.

Поворачивает объект в пространстве.

scale(shape, x, y = x, c = center(shape))
scale!(shape, x, y = x, c = center(shape))

Масштабирует фигуру на коэффициент.

scalefontsizes(factor::Number)

Масштабирует все текущие размеры шрифтов на factor. Например, scalefontsizes(1.1) увеличивает все текущие размеры шрифтов на 10 %. Для сброса до исходных размеров используйте scalefontsizes().

scalefontsizes()

Сбрасывает размеры шрифтов до исходных значений по умолчанию.

stroke(args...; alpha = nothing)

Определяет свойства штриха, используемого при построении линий.

text(string, args...; kw...)

Создает объект PlotText, заключающий строку с информацией о шрифте, для аннотаций к графику. args и kw передаются в font.

translate(shape, x, y = x)
translate!(shape, x, y = x)

Преобразует фигуру в пространстве.

Чередует 2 вектора между собой (как зубцы застежки-молнии).

abline!([plot,] a, b; kwargs…​)

Добавляет прямую линию ax+b…​ поверх текущего графика, не изменяя ограничения оси.

annotate!(anns)
annotate!(anns::Tuple...)
annotate!(x, y, txt)

Добавляет аннотации к существующему графику. Аннотации задаются либо в виде вектора кортежей, каждый из которых имеет вид (x,y,txt), либо как три вектора x, y, txt. Каждый txt может быть String, PlotText PlotText (созданным с помощью text(args...)) или кортежем аргументов для text (например, ("Label", 8, :red, :top)).

Пример

julia> plot(1:10)
julia> annotate!([(7,3,"(7,3)"),(3,7,text("hey", 14, :left, :top, :green))])
julia> annotate!([(4, 4, ("More text", 8, 45.0, :bottom, :red))])
julia> annotate!([2,5], [6,3], ["text at (2,6)", "text at (5,3)"])
areaplot([x,] y)
areaplot!([x,] y)

Строит график с областями и накоплением матрицы y.

Примеры

julia> areaplot(1:3, [1 2 3; 7 8 9; 4 5 6], seriescolor = [:red :green :blue], fillalpha = [0.2 0.3 0.4])
bar(x,y)
bar!(x,y)

Строит столбчатый график по оси y против x.

Именованные аргументы

  • bar_position::Symbol: Выбирает между :overlay (по умолчанию), :stack. (Предупреждение: может быть реализован только частично.) Псевдонимы: (:bar_positions, :barpositions).

  • bar_width::Real: Ширина столбцов в координатах данных. Когда nothing, делает выбор на основе x (или y, когда orientation = :h). Псевдонимы: (:bar_widths, :barwidths).

  • bar_edges::Bool: Выравнивает столбцы по ребрам (true) или по центрам (по умолчанию)?

  • fillrange::Union{Real, AbstractVector}: Заполняет область между диапазоном заполнения и y для типов линий, задает основу для типов bar, sticks и аналогично для других типов. Псевдонимы: (:fill_between, :fillbetween, :fillranges, :fillrng, :fillto, :frange).

  • permute::Tuple{Symbol, Symbol}: Перемещает свойства данных и осей для осей, заданных в кортеже, например (:x, :y). Псевдонимы: (:permutes,).

Примеры

julia> bar([1,2,3],[4,5,6],fillcolor=[:red,:green,:blue],fillalpha=[0.2,0.4,0.6])
julia> bar([(1,4),(2,5),(3,6)])
bar(x,y)
bar!(x,y)

Строит столбчатый график по оси y против x.

Именованные аргументы

  • bar_position::Symbol: Выбирает между :overlay (по умолчанию), :stack. (Предупреждение: может быть реализован только частично.) Псевдонимы: (:bar_positions, :barpositions).

  • bar_width::Real: Ширина столбцов в координатах данных. Когда nothing, делает выбор на основе x (или y, когда orientation = :h). Псевдонимы: (:bar_widths, :barwidths).

  • bar_edges::Bool: Выравнивает столбцы по ребрам (true) или по центрам (по умолчанию)?

  • fillrange::Union{Real, AbstractVector}: Заполняет область между диапазоном заполнения и y для типов линий, задает основу для типов bar, sticks и аналогично для других типов. Псевдонимы: (:fill_between, :fillbetween, :fillranges, :fillrng, :fillto, :frange).

  • permute::Tuple{Symbol, Symbol}: Перемещает свойства данных и осей для осей, заданных в кортеже, например (:x, :y). Псевдонимы: (:permutes,).

Примеры

julia> bar([1,2,3],[4,5,6],fillcolor=[:red,:green,:blue],fillalpha=[0.2,0.4,0.6])
julia> bar([(1,4),(2,5),(3,6)])
barhist(x)
barhist!(x)

Строит столбчатую гистограмму. См. описание histogram.

barhist(x)
barhist!(x)

Строит столбчатую гистограмму. См. описание histogram.

boxplot(x, y)
boxplot!(x, y)

Строит график «ящик с усами».

Именованные аргументы

  • notch: Bool. Делать насечку на графике «ящик»? (false)

  • whisker_range: Вещественное значение. Усы расширяют whisker_range*IQR ниже первого квартиля и выше третьего квартиля. Значения, выходящие за пределы этого диапазона, отображаются как выбросы (1.5).

  • outliers: Bool. Показывать выбросы? (true)

  • whisker_width: Вещественное значение или символ. Длина усов. Возможны следующие варианты: :match для соответствия ширине ящика, :half или число для указания общей длины. (:half)

Пример

julia> using StatsPlots
julia> boxplot(repeat([1,2,3],outer=100),randn(300))
boxplot(x, y)
boxplot!(x, y)

Строит график «ящик с усами».

Именованные аргументы

  • notch: Bool. Делать насечку на графике «ящик»? (false)

  • whisker_range: вещественное значение. Усы расширяют whisker_range*IQR ниже первого квартиля и выше третьего квартиля. Значения, выходящие за пределы этого диапазона, отображаются как выбросы (1.5).

  • outliers: Bool. Показывать выбросы? (true)

  • whisker_width: вещественное значение или символ. Длина усов. Возможны следующие варианты: :match для соответствия ширине ящика, :half или число для указания общей длины. (:half)

Пример

julia> using StatsPlots
julia> boxplot(repeat([1,2,3],outer=100),randn(300))
contour(x,y,z)
contour!(x,y,z)

Строит контурные линии поверхности z.

Аргументы

  • levels: Уровни контура (если AbstractVector) или количество уровней (если Integer).

  • fill: Bool. Заполнять область между контурами или строить только контуры (по умолчанию — false).

Пример

julia> x = y = range(-20, stop = 20, length = 100)
julia> contour(x, y, (x, y) -> x^2 + y^2)
contour(x,y,z)
contour!(x,y,z)

Строит контурные линии поверхности z.

Аргументы

  • levels: Уровни контура (если AbstractVector) или количество уровней (если Integer).

  • fill: Bool. Заполнять область между контурами или строить только контуры (по умолчанию — false).

Пример

julia> x = y = range(-20, stop = 20, length = 100)
julia> contour(x, y, (x, y) -> x^2 + y^2)

Псевдоним для contour с fill = true.

Псевдоним для contour с fill = true.

curves(x,y)
curves!(x,y)

Строит кривую Безье от (x[1],y[1]) до (x[end],y[end]) с контрольными точками (x[2],y[2]), ..., (x[end-1],y[end]-1).

Именованные аргументы

  • fillrange::Union{Real, AbstractVector}: Заполняет область между диапазоном заполнения и y для типов линий, задает основу для типов bar, sticks и аналогично для других типов. Псевдонимы: (:fill_between, :fillbetween, :fillranges, :fillrng, :fillto, :frange).

Пример

julia> curves([1,2,3,4],[1,1,2,4])
curves(x,y)
curves!(x,y)

Строит кривую Безье от (x[1],y[1]) до (x[end],y[end]) с контрольными точками (x[2],y[2]), ..., (x[end-1],y[end]-1).

Именованные аргументы

  • fillrange::Union{Real, AbstractVector}: Заполняет область между диапазоном заполнения и y для типов линий, задает основу для типов bar, sticks и аналогично для других типов. Псевдонимы: (:fill_between, :fillbetween, :fillranges, :fillrng, :fillto, :frange).

Пример

julia> curves([1,2,3,4],[1,1,2,4])
density(x)
density!(x)

Строит линейный график ядерной оценки плотности для x. Сглаженность графика плотности определяется на основе bandwidth (вещественное положительное число).

Аргументы

  • x: AbstractVector выборок для оценки плотности вероятностей.

Именованные аргументы

  • trim::Bool: позволяет отсекать хвосты распределения.

  • bandwidth::Number: низкая полоса пропускания приводит к недостаточному сглаживанию, а высокая полоса пропускания — к избыточному.

Примеры

julia> density(randn(100), bandwidth = -0.01, trim = false)
output : ERROR: Bandwidth must be positive

julia> density(randn(100), bandwidth = 0.1, trim = false)  # кривая с избыточным и недостаточным сглаживанием
julia> density(randn(100), bandwidth = 10, trim = true)  # кривая без избыточного и недостаточного сглаживания

Пример

julia> using StatsPlots
julia> density(randn(100_000))
density(x)
density!(x)

Строит линейный график ядерной оценки плотности для x. Сглаженность графика плотности определяется на основе bandwidth (вещественное положительное число).

Аргументы

  • x: AbstractVector выборок для оценки плотности вероятностей.

Именованные аргументы

  • trim::Bool: позволяет отсекать хвосты распределения.

  • bandwidth::Number: низкая полоса пропускания приводит к недостаточному сглаживанию, а высокая полоса пропускания — к избыточному.

Примеры

julia> density(randn(100), bandwidth = -0.01, trim = false)
output : ERROR: Bandwidth must be positive

julia> density(randn(100), bandwidth = 0.1, trim = false)  # кривая с избыточным и недостаточным сглаживанием
julia> density(randn(100), bandwidth = 10, trim = true)  # кривая без избыточного и недостаточного сглаживания

Пример

julia> using StatsPlots
julia> density(randn(100_000))
heatmap(x,y,z)
heatmap!(x,y,z)

Строит тепловую карту прямоугольного массива z.

Именованные аргументы

  • aspect_ratio::Union{Real, Symbol}: Размер области графика изменяется так, что 1 y-единица имеет размер, равный aspect_ratio x-единицам. Когда :none, изображения наследуют соотношение сторон области графика. Используйте :equal для соотношения сторон единицы. Псевдонимы: (:aspectratios, :aspectratio, :aspectratios, :axisratio, :axisratio, :ratio).

Пример

julia> heatmap(randn(10,10))
heatmap(x,y,z)
heatmap!(x,y,z)

Строит тепловую карту прямоугольного массива z.

Именованные аргументы

  • aspect_ratio::Union{Real, Symbol}: Размер области графика изменяется так, что 1 y-единица имеет размер, равный aspect_ratio x-единицам. Когда :none, изображения наследуют соотношение сторон области графика. Используйте :equal для соотношения сторон единицы. Псевдонимы: (:aspectratios, :aspectratio, :aspectratios, :axisratio, :axisratio, :ratio).

Пример

julia> heatmap(randn(10,10))
hexbin(x,y)
hexbin!(x,y)

Строит шестиугольный график группирования (гистограмму наблюдений (x[i],y[i]) с шестиугольными столбцами).

Пример

julia> hexbin(randn(10_000), randn(10_000))
hexbin(x,y)
hexbin!(x,y)

Строит шестиугольный график группирования (гистограмму наблюдений (x[i],y[i]) с шестиугольными столбцами).

Пример

julia> hexbin(randn(10_000), randn(10_000))
histogram(x)
histogram!(x)

Строит гистограмму.

Аргументы

  • x: AbstractVector значений, подлежащих группированию.

  • bins::Union{Integer, Symbol, Tuple{Integer, Integer}, AbstractVector}: Значение по умолчанию — автоматически (правило Фридмана-Диакониса). Для типов гистограмм определяет примерное количество столбцов, к которому следует стремиться, или используемый алгоритм автоматического группирования (:sturges, :sqrt, :rice, :scott или :fd). Для более детального контроля передайте вектор пороговых значений, например range(minimum(x), stop = maximum(x), length = 25). Псевдонимы: (:bin, :nb, :nbin, :nbins).

  • weights: Вектор весов для значений в x, для взвешенного числа столбцов.

  • normalize::Union{Bool, Symbol}: Режим нормализации гистограммы. Возможные значения: false/:none (без нормализации, по умолчанию), true/:pdf (нормализация в отдельный PDF, где суммарная площадь столбцов равна 1), :probability (высота столбцов в сумме равна 1) и :density (площадь, а не высота каждого столбца, равна количествам — полезно при разных размерах столбцов). Псевдонимы: (:norm, :normalized, :normalizes, :normed).

  • bar_position::Symbol: Выбирает между :overlay (по умолчанию), :stack. (Предупреждение: может быть реализован только частично.) Псевдонимы: (:bar_positions, :barpositions).

  • bar_width::Real: Ширина столбцов в координатах данных. Когда nothing, делает выбор на основе x (или y, когда orientation = :h). Псевдонимы: (:bar_widths, :barwidths).

  • bar_edges::Bool: Выравнивает столбцы по ребрам (true) или по центрам (по умолчанию)?

  • permute::Tuple{Symbol, Symbol}: Перемещает свойства данных и осей для осей, заданных в кортеже, например (:x, :y). Псевдонимы: (:permutes,).

Пример

julia> histogram([1,2,1,1,4,3,8],bins=0:8)
julia> histogram([1,2,1,1,4,3,8],bins=0:8,weights=weights([4,7,3,9,12,2,6]))
histogram(x)
histogram!(x)

Строит гистограмму.

Аргументы

  • x: AbstractVector значений, подлежащих группированию.

  • bins::Union{Integer, Symbol, Tuple{Integer, Integer}, AbstractVector}: Значение по умолчанию — автоматически (правило Фридмана-Диакониса). Для типов гистограмм определяет примерное количество столбцов, к которому следует стремиться, или используемый алгоритм автоматического группирования (:sturges, :sqrt, :rice, :scott или :fd). Для более детального контроля передайте вектор пороговых значений, например range(minimum(x), stop = maximum(x), length = 25). Псевдонимы: (:bin, :nb, :nbin, :nbins).

  • weights: Вектор весов для значений в x, для взвешенного числа столбцов.

  • normalize::Union{Bool, Symbol}: Режим нормализации гистограммы. Возможные значения: false/:none (без нормализации, по умолчанию), true/:pdf (нормализация в отдельный PDF, где суммарная площадь столбцов равна 1), :probability (высота столбцов в сумме равна 1) и :density (площадь, а не высота каждого столбца, равна количествам — полезно при разных размерах столбцов). Псевдонимы: (:norm, :normalized, :normalizes, :normed).

  • bar_position::Symbol: выбирает между :overlay (по умолчанию), :stack. (Предупреждение: может быть реализован только частично.) Псевдонимы: (:bar_positions, :barpositions).

  • bar_width::Real: Ширина столбцов в координатах данных. Когда nothing, делает выбор на основе x (или y, когда orientation = :h). Псевдонимы: (:bar_widths, :barwidths).

  • bar_edges::Bool: Выравнивает столбцы по ребрам (true) или по центрам (по умолчанию)?

  • permute::Tuple{Symbol, Symbol}: Перемещает свойства данных и осей для осей, заданных в кортеже, например (:x, :y). Псевдонимы: (:permutes,).

Пример

julia> histogram([1,2,1,1,4,3,8],bins=0:8)
julia> histogram([1,2,1,1,4,3,8],bins=0:8,weights=weights([4,7,3,9,12,2,6]))
histogram2d(x,y)
histogram2d!(x,y)

Строит двухмерную гистограмму.

Аргументы

  • bins: Количество столбцов (если Integer) или ребер столбцов (если AbtractVector)

  • weights: Вектор весов для значений в x. Вес каждой записи x учитывается в высоте ее столбца.

Пример

julia> histogram2d(randn(10_000),randn(10_000))
histogram2d(x,y)
histogram2d!(x,y)

Строит двухмерную гистограмму.

Аргументы

  • bins: Количество столбцов (если Integer) или ребер столбцов (если AbtractVector)

  • weights: Вектор весов для значений в x. Вес каждой записи x учитывается в высоте ее столбца.

Пример

julia> histogram2d(randn(10_000),randn(10_000))
hline(y)
hline!(y)

Строит горизонтальные линии в позициях, заданных значениями в AbstractVector y.

Пример

julia> hline([-1,0,2])
hline(y)
hline!(y)

Строит горизонтальные линии в позициях, заданных значениями в AbstractVector y.

Пример

julia> hline([-1,0,2])
hspan(y)

Строит прямоугольник между горизонтальной линией в позиции y[1] и горизонтальной линией в позиции y[2]. Если length(y) ≥ 4, следующие прямоугольники строятся между y[3] и y[4], y[5] и y[6] и т. д. Если length(y) имеет нечетное значение, последняя запись y игнорируется.

Пример

julia> hspan(1:6)
hspan(y)

Строит прямоугольник между горизонтальной линией в позиции y[1] и горизонтальной линией в позиции y[2]. Если length(y) ≥ 4, следующие прямоугольники строятся между y[3] и y[4], y[5] и y[6] и т. д. Если length(y) имеет нечетное значение, последняя запись y игнорируется.

Пример

julia> hspan(1:6)
lens!([plot,] x, y, inset = (sp_index, bbox(x1, x2, y1, y2)))

Увеличивает область графика, заданную x и y. sp_index является индексом подграфика, а значения x1, x2, y1 и y2 должны быть между 0 и 1.

mesh3d(x,y,z)
mesh3d(x,y,z; connections)

Строит трехмерную сетку. В Plotly треугольники могут быть заданы с помощью аргумента connections.

Пример

x=[0, 1, 2, 0]
y=[0, 0, 1, 2]
z=[0, 2, 0, 1]

i=[0, 0, 0, 1]
j=[1, 2, 3, 2]
k=[2, 3, 1, 3]

plot(x,y,z,seriestype=:mesh3d;connections=(i,j,k))
mesh3d(x,y,z)
mesh3d(x,y,z; connections)

Строит трехмерную сетку. В Plotly треугольники могут быть заданы с помощью аргумента connections.

Пример

x=[0, 1, 2, 0]
y=[0, 0, 1, 2]
z=[0, 2, 0, 1]

i=[0, 0, 0, 1]
j=[1, 2, 3, 2]
k=[2, 3, 1, 3]

plot(x,y,z,seriestype=:mesh3d;connections=(i,j,k))
ohlc(x,y::Vector{OHLC})
ohlc!(x,y::Vector{OHLC})

Строит график открытия-максимума-минимума-закрытия. Каждая запись y представлена вертикальным отрезком, располагающимся от низкого до высокого значения, с короткими горизонтальными отрезками слева и справа, обозначающими значения открытия и закрытия, соответственно.

Пример

julia> meanprices = cumsum(randn(100))
julia> y = OHLC[(p+rand(),p+1,p-1,p+rand()) for p in meanprices]
julia> ohlc(y)
ohlc(x,y::Vector{OHLC})
ohlc!(x,y::Vector{OHLC})

Строит график открытия-максимума-минимума-закрытия. Каждая запись y представлена вертикальным отрезком, располагающимся от низкого до высокого значения, с короткими горизонтальными отрезками слева и справа, обозначающими значения открытия и закрытия, соответственно.

Пример

julia> meanprices = cumsum(randn(100))
julia> y = OHLC[(p+rand(),p+1,p-1,p+rand()) for p in meanprices]
julia> ohlc(y)
path3d(x,y,z)
path3d!(x,y,z)

Строит трехмерный путь от (x[1],y[1],z[1]) до (x[2],y[2],z[2]), …​, до (x[end],y[end],z[end]).

Пример

julia> path3d([0,1,2,3],[0,1,4,9],[0,1,8,27])
path3d(x,y,z)
path3d!(x,y,z)

Строит трехмерный путь от (x[1],y[1],z[1]) до (x[2],y[2],z[2]), …​, до (x[end],y[end],z[end]).

Пример

julia> path3d([0,1,2,3],[0,1,4,9],[0,1,8,27])
pie(x, y)

Строит круговую диаграмму.

Пример

x = ["Nerds","Hackers","Scientists"]
y = [0.4,0.35,0.25]
pie(x, y, title="The Julia Community")
pie(x, y)

Строит круговую диаграмму.

Пример

x = ["Nerds","Hackers","Scientists"]
y = [0.4,0.35,0.25]
pie(x, y, title="The Julia Community")

Строит график с типом ряда :path3d.

quiver(x,y,quiver=(u,v))
quiver!(x,y,quiver=(u,v))

Строит график в виде стрелок (векторного поля). i-й вектор расширяется от (x[i],y[i]) до (x[i] + u[i], y[i] + v[i]).

Именованные аргументы

  • arrow::Union{Bool, Plots.Arrow}: Определяет стрелки, которые должны отображаться в конце сегментов линии пути (непосредственно перед NaN и последней не-NaN-точкой). Используется в графике со стрелками, графике в виде потока или аналогичных. Псевдонимы: (:arrows,).

Пример

julia> quiver([1,2,3],[3,2,1],quiver=([1,1,1],[1,2,3]))
quiver(x,y,quiver=(u,v))
quiver!(x,y,quiver=(u,v))

Строит график в виде стрелок (векторного поля). i-й вектор расширяется от (x[i],y[i]) до (x[i] + u[i], y[i] + v[i]).

Именованные аргументы

  • arrow::Union{Bool, Plots.Arrow}: определяет стрелки, которые должны отображаться в конце сегментов линии пути (непосредственно перед NaN и последней не-NaN-точкой). Используется в графике со стрелками, графике в виде потока или аналогичных. Псевдонимы: (:arrows,).

Пример

julia> quiver([1,2,3],[3,2,1],quiver=([1,1,1],[1,2,3]))
scatter(x,y)
scatter!(x,y)

Строит график рассеяния y против x.

Именованные аргументы

  • markersize::Union{Real, AbstractVector}: Размер (радиус в пикселях) маркеров. Псевдонимы: (:markersizes, :ms, :msize).

  • markercolor::Union{Integer, Symbol, ColorSchemes.ColorScheme, ColorTypes.Colorant}: Цвет внутренней части маркера или фигуры. :match будет принимать значение из :seriescolor. Псевдонимы: (:markercolors, :markercolour, :mc, :mcolor, :mcolour).

  • markershape::Union{Symbol, Plots.Shape, AbstractVector}: Выбирает между [:none, :auto, :circle, :rect, :star5, :diamond, :hexagon, :cross, :xcross, :utriangle, :dtriangle, :rtriangle, :ltriangle, :pentagon, :heptagon, :octagon, :star4, :star6, :star7, :star8, :vline, :hline, :+, :x]. Псевдонимы: (:markershapes, :shape).

  • markeralpha::Real: Переопределяет альфа/прозрачность для внутренней части маркера. nothing (по умолчанию) означает, что будет использоваться альфа-значение цвета маркера. Псевдонимы: (:ma, :malpha, :markeralphas, :markeropacity, :mopacity, :mα).

Примеры

julia> scatter([1,2,3],[4,5,6],markersize=[3,4,5],markercolor=[:red,:green,:blue])
julia> scatter([(1,4),(2,5),(3,6)])
scatter(x,y)
scatter!(x,y)

Строит график рассеяния y против x.

Именованные аргументы

  • markersize::Union{Real, AbstractVector}: Размер (радиус в пикселях) маркеров. Псевдонимы: (:markersizes, :ms, :msize).

  • markercolor::Union{Integer, Symbol, ColorSchemes.ColorScheme, ColorTypes.Colorant}: Цвет внутренней части маркера или фигуры. :match будет принимать значение из :seriescolor. Псевдонимы: (:markercolors, :markercolour, :mc, :mcolor, :mcolour).

  • markershape::Union{Symbol, Plots.Shape, AbstractVector}: Выбирает между [:none, :auto, :circle, :rect, :star5, :diamond, :hexagon, :cross, :xcross, :utriangle, :dtriangle, :rtriangle, :ltriangle, :pentagon, :heptagon, :octagon, :star4, :star6, :star7, :star8, :vline, :hline, :+, :x]. Псевдонимы: (:markershapes, :shape).

  • markeralpha::Real: Переопределяет альфа/прозрачность для внутренней части маркера. nothing (по умолчанию) означает, что будет использоваться альфа-значение цвета маркера. Псевдонимы: (:ma, :malpha, :markeralphas, :markeropacity, :mopacity, :mα).

Примеры

julia> scatter([1,2,3],[4,5,6],markersize=[3,4,5],markercolor=[:red,:green,:blue])
julia> scatter([(1,4),(2,5),(3,6)])
scatter3d(x,y,z)
scatter3d!(x,y,z)

Строит трехмерный график рассеяния.

Пример

julia> scatter3d([0,1,2,3],[0,1,4,9],[0,1,8,27])
scatter3d(x,y,z)
scatter3d!(x,y,z)

Строит трехмерный график рассеяния.

Пример

julia> scatter3d([0,1,2,3],[0,1,4,9],[0,1,8,27])
scatterhist(x)
scatterhist!(x)

Строит гистограмму рассеяния (столбцы представлены точками, а не полосами). См. описание histogram.

scatterhist(x)
scatterhist!(x)

Строит гистограмму рассеяния (столбцы представлены точками, а не полосами). См. описание histogram.

stephist(x)
stephist!(x)

Строит ступенчатую гистограмму (столбцы представлены горизонтальными линиями, а не полосами). См. описание histogram.

stephist(x)
stephist!(x)

Строит ступенчатую гистограмму (столбцы представлены горизонтальными линиями, а не полосами). См. описание histogram.

sticks(x,y)
sticks!(x,y)

Строит график зависимости y против x.

Аргументы

  • fillrange::Union{Real, AbstractVector}: Заполняет область между диапазоном заполнения и y для типов линий, задает основу для типов bar, sticks и аналогично для других типов. Псевдонимы: (:fill_between, :fillbetween, :fillranges, :fillrng, :fillto, :frange).

  • markershape::Union{Symbol, Plots.Shape, AbstractVector}: Выбирает между [:none, :auto, :circle, :rect, :star5, :diamond, :hexagon, :cross, :xcross, :utriangle, :dtriangle, :rtriangle, :ltriangle, :pentagon, :heptagon, :octagon, :star4, :star6, :star7, :star8, :vline, :hline, :+, :x]. Псевдонимы: (:markershapes, :shape).

Пример

julia> sticks(1:10)
sticks(x,y)
sticks!(x,y)

Строит график зависимости y против x.

Аргументы

  • fillrange::Union{Real, AbstractVector}: Заполняет область между диапазоном заполнения и y для типов линий, задает основу для типов bar, sticks и аналогично для других типов. Псевдонимы: (:fill_between, :fillbetween, :fillranges, :fillrng, :fillto, :frange).

  • markershape::Union{Symbol, Plots.Shape, AbstractVector}: Выбирает между [:none, :auto, :circle, :rect, :star5, :diamond, :hexagon, :cross, :xcross, :utriangle, :dtriangle, :rtriangle, :ltriangle, :pentagon, :heptagon, :octagon, :star4, :star6, :star7, :star8, :vline, :hline, :+, :x]. Псевдонимы: (:markershapes, :shape).

Пример

julia> sticks(1:10)
surface(x,y,z)
surface!(x,y,z)

Строит трехмерный поверхностный график.

Пример

julia> using LinearAlgebra
julia> x = y = range(-3, stop = 3, length = 100)
julia> surface(x, y, (x, y) -> sinc(norm([x, y])))
surface(x,y,z)
surface!(x,y,z)

Строит трехмерный поверхностный график.

Пример

julia> using LinearAlgebra
julia> x = y = range(-3, stop = 3, length = 100)
julia> surface(x, y, (x, y) -> sinc(norm([x, y])))

Добавляет название к существующему графику.

violin(x,y,z)
violin!(x,y,z)

Строит график «Скрипка».

Пример

julia> violin(repeat([1,2,3],outer=100),randn(300))
violin(x,y,z)
violin!(x,y,z)

Строит график «Скрипка».

Пример

julia> violin(repeat([1,2,3],outer=100),randn(300))
vline(x)
vline!(x)

Строит вертикальные линии в позициях, заданных значениями в AbstractVector x.

Пример

julia> vline([-1,0,2])
vline(x)
vline!(x)

Строит вертикальные линии в позициях, заданных значениями в AbstractVector x.

Пример

julia> vline([-1,0,2])
vspan(x)

Строит прямоугольник между вертикальной линией в позиции x[1] и вертикальной линией в позиции x[2]. Если length(x) ≥ 4, следующие прямоугольники строятся между x[3] и x[4], x[5] и x[6] и т. д. Если length(x) имеет нечетное значение, последняя запись x игнорируется.

Пример

julia> vspan(1:6)
vspan(x)

Строит прямоугольник между вертикальной линией в позиции x[1] и вертикальной линией в позиции x[2]. Если length(x) ≥ 4, следующие прямоугольники строятся между x[3] и x[4], x[5] и x[6] и т. д. Если length(x) имеет нечетное значение, последняя запись x игнорируется.

Пример

julia> vspan(1:6)
wireframe(x,y,z)
wireframe!(x,y,z)

Строит трехмерный каркасный график.

Пример

julia> wireframe(1:10,1:10,randn(10,10))
wireframe(x,y,z)
wireframe!(x,y,z)

Строит трехмерный каркасный график.

Пример

julia> wireframe(1:10,1:10,randn(10,10))

Задает атрибуты оси x для существующего графика.

xerror(x, y [, z]; xerror = vals)
xerror!(x, y [, z]; xerror = vals)

Создает или добавляет ряд xerrorbars в позициях, заданных x, y и z, с длиной, определенной в vals.

Markerstrokecolor окрашивает всю полосу погрешностей, если не указано иное.

xerror(x, y [, z]; xerror = vals)
xerror!(x, y [, z]; xerror = vals)

Создает или добавляет ряд xerrorbars в позициях, заданных x, y и z, с длиной, определенной в vals.

Markerstrokecolor окрашивает всю полосу погрешностей, если не указано иное.

Переворачивает ось x текущего графика.

Задает атрибуты сетки x для существующего графика.

Добавляет xlabel к существующему графику.

Задает xlims для существующего графика.

Задает xticks для существующего графика.

Задает атрибуты оси y для существующего графика.

yerror(x, y [, z]; yerror = vals)
yerror!(x, y [, z]; yerror = vals)

Создает или добавляет ряд yerrorbars в позициях, заданных x, y и z, с длиной, определенной в vals.

Markerstrokecolor окрашивает всю полосу погрешностей, если не указано иное.

yerror(x, y [, z]; yerror = vals)
yerror!(x, y [, z]; yerror = vals)

Создает или добавляет ряд yerrorbars в позициях, заданных x, y и z, с длиной, определенной в vals.

Markerstrokecolor окрашивает всю полосу погрешностей, если не указано иное.

Переворачивает ось y текущего графика.

Задает атрибуты сетки y для существующего графика.

Добавляет ylabel к существующему графику.

Задает ylims для существующего графика.

Задает yticks для существующего графика.

Задает атрибуты оси z для существующего графика.

zerror(x, y [, z]; zerror = vals)
zerror!(x, y [, z]; zerror = vals)

Создает или добавляет ряд zerrorbars в позициях, заданных x, y и z, с длиной, определенной в vals.

Markerstrokecolor окрашивает всю полосу погрешностей, если не указано иное.

zerror(x, y [, z]; zerror = vals)
zerror!(x, y [, z]; zerror = vals)

Создает или добавляет ряд zerrorbars в позициях, заданных x, y и z, с длиной, определенной в vals.

Markerstrokecolor окрашивает всю полосу погрешностей, если не указано иное.

Переворачивает ось z текущего графика.

Задает атрибуты сетки z для существующего графика.

Добавляет zlabel к существующему графику.

Задает zlims для существующего графика.

Задает zticks для существующего графика.

Анимации

Animate from an iterator which returns the plot args each iteration.

frame(animation[, plot])

Add a plot (the current plot if not specified) to an existing animation

gif(animation[, filename]; fps=20, loop=0, variable_palette=false, verbose=false, show_msg=true)

Создает анимированный GIF-файл из объекта Animation.

mov(animation[, filename]; fps=20, loop=0, verbose=false, show_msg=true)

Создает MOV-файл из объекта Animation.

mp4(animation[, filename]; fps=20, loop=0, verbose=false, show_msg=true)

Создает MP4-файл из объекта Animation.

webm(animation[, filename]; fps=20, loop=0, verbose=false, show_msg=true)

Создает WEBM-файл из объекта Animation.

Collect one frame per for-block iteration and return an Animation object.

Пример:

p = plot(1)
anim = @animate for x=0:0.1:5
    push!(p, 1, sin(x))
end
gif(anim)

Данный макрос поддерживает дополнительные параметры, которые могут быть добавлены после основного тела цикла.

  • Добавление every n с положительным целым числом n, чтобы в каждой n-й итерации принимать только один фрейм.

  • Добавление when <cond>, где <cond> — выражение, результатом которого является логическое значение, чтобы принимать фрейм только тогда, когда <cond> возвращает true. Несовместимо с every.

Строит Animation, используя один кадр на каждую итерацию цикла, затем создает анимированный GIF-файл. Пример:

  p = plot(1)
  @gif for x=0:0.1:5
    push!(p, 1, sin(x))
  end

Данный макрос поддерживает дополнительные параметры, которые могут быть добавлены после основного тела цикла.

  • Добавление fps=n с положительным целым числом n, чтобы указать нужное число кадров в секунду.

  • Добавление every n с положительным целым числом n, чтобы в каждой n-й итерации принимать только один кадр.

  • Добавление when <cond>, где <cond> — выражение, результатом которого является логическое значение, чтобы принимать кадр только тогда, когда <cond> возвращает true. Несовместимо с every.

Извлечение

current()

Возвращает объект Plot для текущего графика

xlims([plt])

Возвращает ограничения оси x текущего графика или подграфика

ylims([plt])

Возвращает ограничения оси y текущего графика или подграфика

zlims([plt])

Возвращает ограничения оси z текущего графика или подграфика

backend_object(plot)

Возвращает представление бэкенда объекта Plot. Возвращает nothing, если бэкенд не поддерживает данную функцию.

plotattr([attr])

Ищет свойства атрибута Plots или указывает тип атрибута. Варианты — Series, Subplot, Plot, Axis. Вызовите plotattr() для поиска атрибута с помощью нечеткого поиска. Информация аналогична представленной по адресу: https://docs.juliaplots.org/latest/attributes/.

Вывод

display(x)
display(d::AbstractDisplay, x)
display(mime, x)
display(d::AbstractDisplay, mime, x)

Отображает x с помощью самого верхнего применимого дисплея в стеке дисплеев, как правило, использующего максимально полный из поддерживаемых мультимедийных выводов для x, с выводом обычного текста stdout в качестве резерва. Вариант display(d, x) пытается отобразить x только на данном дисплее d, выдавая MethodError, если d не поддерживает отображение объектов такого типа.

В целом нельзя предполагать, что вывод display переходит в stdout (в отличие от print(x) или show(x)). Например, display(x) может открыть отдельное окно с изображением. display(x) означает «отображать x с максимальным качеством для текущих устройств вывода». Если требуется текстовый вывод типа REPL, который гарантированно переходит в stdout, следует использовать вместо него макрос show(stdout, "text/plain", x).

Кроме того, есть два варианта с аргументом mime (строка типа MIME, например "image/png"), которые пытаются отображать x только с помощью запрашиваемого типа MIME, выдавая MethodError, если этот тип не поддерживается дисплеями или x. Используя эти варианты, пользователь также может предоставлять «необработанные» данные в запрашиваемый тип MIME, передавая x::AbstractString (для типов MIME с текстовым хранилищем, таким как текст HTML или приложение/postscript) или x::Vector{UInt8} (для двоичных типов MIME).

Чтобы настроить отображение экземпляров типа, перегрузите show вместо display, как описывается в разделе руководства Настраиваемая структурная распечатка программного кода.

addExtension(filepath, extension)

Изменяет расширение пути к файлу в соответствии с сопоставлением расширений.

Закрывает все открытые окна графического интерфейса пользователя текущего бэкенда.

eps([plot,], filename)

Сохраняет график как EPS-файл.

gui([plot])

Отображает график с использованием окна графического интерфейса пользователя бэкендов.

html([plot,], filename)

Сохраняет график как HTML-файл.

json([plot,], filename)

Сохраняет график как JSON-файл.

pdf([plot,], filename)

Сохраняет график как PDF-файл.

png([plot,], filename)

Сохраняет график как PNG-файл.

ps([plot,], filename)

Сохраняет график как PS-файл.

savefig([plot,] filename)

Сохраняет график (текущий график, если plot не передан) в файл. Тип файла определяется расширением файла. Все бэкенды поддерживают типы файлов PNG и PDF, некоторые также поддерживают SVG, PS, EPS, HTML и TEX.

svg([plot,], filename)

Сохраняет график как SVG-файл.

tex([plot,], filename)

Сохраняет график как TEX-файл.

txt([plot,], filename)

Сохраняет график как TXT-файл.