Несколько графиков из DataFrame

Введение в визуализацию данных с Julia

Gustavo Vieira Suñe

Data Analyst

Несколько переменных на одном графике

# Violin plot
@df insurance violin(
    :Sex, :Charges,
    label=false, linewidth=0,
    fillcolor=:grey40
)

# Add box plot @df insurance boxplot!( :Sex, :Charges, label=false, alpha=0.75, fillcolor=:mediumorchid3, outliers=false, ) ylabel!("Insurance Premium (USD)")

Ящик с усами и скрипичная диаграмма, наложенные друг на друга: распределение страховых выплат по полу.

Введение в визуализацию данных с Julia

Категориальные данные и макеты

  • DataFrame insurance
Age Sex BMI Children Smoker Region Charges
19 female 27.90 0 yes southwest 16884.90
18 male 33.77 1 no southeast 1725.55
28 male 33.00 3 no southeast 4449.46
... ... ... ... ... ... ...
  • Категориальный столбец → графики рядом
    • Рецепт @df совместим с аргументом layout!
Введение в визуализацию данных с Julia

Макеты с DataFrame

@df insurance violin(
    :Sex,
    :Charges,
    group=:Region,
    linewidth=0,
    color=[:red :green :blue :purple],
    legend_position=:top,

# Set layout layout=(2,2)
) ylims!(0, 6*10^4) ylabel!("Premium (USD)")

Сетка 2×2 из ящиков с усами: распределение страховых выплат по полу для каждого региона.

Введение в визуализацию данных с Julia

Цепочки в работе

@chain insurance begin
    # Smoker column to numeric
    transform(:Smoker
        => ByRow(x -> x == "yes" ? 100 : 0)
        => :Smoker)

groupby([:Sex, :Children]) combine(:Smoker => mean)
@df bar(:Children, :Smoker_mean, group=:Sex, linewidth=0, fillcolor=[:cyan4 :chocolate2], # Set layout layout=2)
end ylims!(0, 35) xlabel!("Children") ylabel!("Percentage of Smokers")

Сетка 1×2 из столбчатых диаграмм: доля курильщиков в зависимости от числа детей.

Введение в визуализацию данных с Julia

Графики корреляционной матрицы

Сетка 2×2 из графиков. На диагонали — гистограммы распределений возраста и индекса массы тела. Выше диагонали — двумерная гистограмма возраста и ИМТ, ниже диагонали — точечная диаграмма тех же переменных.

Введение в визуализацию данных с Julia

Графики корреляционной матрицы

Сетка 2×2 из графиков. На диагонали — гистограммы распределений возраста и индекса массы тела. Выше диагонали — двумерная гистограмма возраста и ИМТ, ниже диагонали — точечная диаграмма тех же переменных.

  • Диагональ

    • Гистограммы распределений переменных
  • Выше диагонали

    • Двумерные гистограммы
  • Ниже диагонали

    • Точечные диаграммы с линиями регрессии
Введение в визуализацию данных с Julia

Графики корреляционной матрицы в StatsPlots.jl

# Using DataFrames recipe
@df insurance corrplot(

# Numerical columns [:Age :BMI],
# Customize markercolor=:thermal, fillcolor=:acton )

Сетка 2×2 из графиков. На диагонали — гистограммы распределений возраста и индекса массы тела. Выше диагонали — двумерная гистограмма возраста и ИМТ, ниже диагонали — точечная диаграмма тех же переменных.

1 https://docs.juliaplots.org/latest/generated/colorschemes/
Введение в визуализацию данных с Julia

Графики корреляционной матрицы в StatsPlots.jl

# Using DataFrames recipe
@df insurance corrplot(
    # Numerical columns
    [:Age :BMI :Children :Charges],

# Customize markercolor=:thermal, fillcolor=:acton )

Корреляционная матрица для возраста, ИМТ, числа детей и страховых выплат.

Введение в визуализацию данных с Julia

Давайте потренируемся!

Введение в визуализацию данных с Julia

Preparing Video For Download...