Эффективные визуализации с макетами

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

Gustavo Vieira Suñe

Data Analyst

Макеты

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

График плотности, отображающий распределение возраста по частоте прослушивания K-Pop: по одной кривой на каждую категорию на одном рисунке.

  • Сетка графиков (layout)

Сетка 2×2 из графиков плотности, отображающих распределение возраста по частоте прослушивания K-Pop: по одному графику на каждую категорию, каждая линия своего цвета.

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

Сетка

using StatsPlots, DataFrames, CSV

# Load dataset
streaming = DataFrame(
    CSV.File("streaming.csv")
)

# Create density plot density( streaming.Age, group=streaming."Frequency [K pop]", linewidth=2.5,
# Set layout layout=4, )

Сетка 2×2 из графиков плотности, отображающих распределение возраста по частоте прослушивания K-Pop: по одному графику на каждую категорию. Все линии одного цвета.

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

Настройка элементов сетки

using Colors

# Julia logo colors
logocolors = Colors.JULIA_LOGO_COLORS
colors = [logocolors.blue logocolors.red
    logocolors.green logocolors.purple]

density( streaming.Age, group=streaming."Frequency [K pop]", linewidth=2.5, layout=4, # Line colors linecolor=colors, )

Сетка 2×2 из графиков плотности, отображающих распределение возраста по частоте прослушивания K-Pop: по одному графику на каждую категорию. Линия каждого графика своего цвета.

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

Управление макетом сетки

density(
    streaming.Age,
    group=streaming."Frequency [K pop]",
    linewidth=2.5,
    linecolor=colors,

# Layout dimensions layout=(4, 1),
# Axis labels xlabel=["\ "" "" "Age"], ylabel="Probability", )
# Axis bounds xlims!(10, 80) ylims!(0, 0.2)

Сетка 4×1 из графиков плотности, отображающих распределение возраста по частоте прослушивания K-Pop: по одному графику на каждую категорию. Линия каждого графика своего цвета.

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

Сложные макеты

Сетка графиков: верхний ряд — два ящика с усами (возраст и уровень тревожности по стриминговым сервисам), нижний ряд — три гистограммы распределения возраста по каждому сервису.

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

Пошагово

theme(:wong)
# Choose colors
colors = [:purple :green3 :firebrick1]


# First box plot p1 = boxplot(streaming."Streaming service", streaming.Age,
# Group by streaming service group=streaming."Streaming service", color=colors,
label=false, ylabel="Age", # Remove outliers outliers=false)

Ящик с усами, отображающий распределение возраста по стриминговым сервисам.

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

Пошагово

# Second box plot
p2 = boxplot(
    streaming."Streaming service",
    streaming.Anxiety,
    # Group by streaming service
    group=streaming."Streaming service",
    color=colors,
    label=false,
    ylabel="Anxiety",
    # Remove outliers
    outliers=false,
)

Ящик с усами, отображающий распределение уровней тревожности по стриминговым сервисам.

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

Пошагово

# Histograms
p3 = histogram(
    streaming.Age,
    group=streaming."Streaming service",
    color=colors,
    # Remove lines
    linewidth=0,

# Set layout layout=(1, 3),
xlabel="Age", # Set y-axis labels ylabel=["Frequency" "" ""] )

Три гистограммы, отображающие распределение возраста для каждого стримингового сервиса.

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

Объединение графиков

# Select layout
layout = @layout [a b; c]

Рисунок, отображающий структуру макета графика.

# Join the plots
plot(p1, p2, p3, layout=layout)

Сетка графиков: верхний ряд — два ящика с усами (возраст и уровень тревожности по стриминговым сервисам), нижний ряд — три гистограммы распределения возраста по каждому сервису.

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

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

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

Preparing Video For Download...