Effektiva visualiseringar med layouter

Introduktion till datavisualisering med Julia

Gustavo Vieira Suñe

Data Analyst

Layouter

  • Flera kurvor i samma figur

Ett densitetsdiagram som visar åldersfördelningen grupperad efter hur ofta man lyssnar på K-pop, med en kurva per kategori i samma figur.

  • Diagramrutnät (layout)

Ett två-gånger-två rutnät av densitetsdiagram som visar åldersfördelningen, ett diagram per lyssningsfrekvens för K-pop. Varje diagrams linje har en annan färg.

Introduktion till datavisualisering med Julia

Rutnätet

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, )

Ett två-gånger-två rutnät av densitetsdiagram som visar åldersfördelningen, ett diagram per lyssningsfrekvens för K-pop. Alla diagram har samma linjefärg.

Introduktion till datavisualisering med Julia

Anpassa rutnätselement

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, )

Ett två-gånger-två rutnät av densitetsdiagram som visar åldersfördelningen, ett diagram per lyssningsfrekvens för K-pop. Varje diagrams linje har en annan färg.

Introduktion till datavisualisering med Julia

Styra rutnätslayouten

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)

Ett fyra-gånger-ett rutnät av densitetsdiagram som visar åldersfördelningen, ett diagram per lyssningsfrekvens för K-pop. Varje diagrams linje har en annan färg.

Introduktion till datavisualisering med Julia

Avancerade layouter

Ett rutnät av diagram. Översta raden visar två lådagram, ett för ålder och ett för ångestnivå per streamingtjänst. Nedersta raden har tre histogram som visar åldersfördelningen för varje streamingtjänst.

Introduktion till datavisualisering med Julia

Steg för steg

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)

Ett lådagram som visar åldersfördelningen per streamingtjänst.

Introduktion till datavisualisering med Julia

Steg för steg

# 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,
)

Ett lådagram som visar fördelningen av ångestnivåer per streamingtjänst.

Introduktion till datavisualisering med Julia

Steg för steg

# 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" "" ""] )

Tre histogram som visar åldersfördelningen för varje streamingtjänst.

Introduktion till datavisualisering med Julia

Slå ihop diagrammen

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

En figur som visar layoutstrukturen för diagrammet.

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

Ett rutnät av diagram. Översta raden visar två lådagram, ett för ålder och ett för ångestnivå per streamingtjänst. Nedersta raden har tre histogram som visar åldersfördelningen för varje streamingtjänst.

Introduktion till datavisualisering med Julia

Nu kör vi en övning!

Introduktion till datavisualisering med Julia

Preparing Video For Download...