Plotten in meer dimensies

Introductie tot datavisualisatie met Julia

Gustavo Vieira Suñe

Data Analyst

Waarom meer dimensies?

  • Herken onderliggende patronen en trends
  • Analyseer relaties tussen meerdere variabelen tegelijk
  • Identificeer clusters
  • Duidelijke, meeslepende presentatie
  • Feature-engineering
Introductie tot datavisualisatie met Julia

Blijven clusters bestaan?

Een spreidingsdiagram met verzekeringspremie versus leeftijd van polishouders. Het toont drie duidelijke clusters.

  • Zijn deze clusters aanwezig bij elk aantal kinderen?
Introductie tot datavisualisatie met Julia

Een slice plotten

theme(:bright)

# Gegevens filteren
no_children = filter(
    row -> row.Children == 0, insurance)

# Een slice plotten @df no_children scatter( :Age, :Charges, group=:Smoker, markersize=4, alpha=0.5, legend_title="Smoker") xlabel!("Leeftijd") ylabel!("Verzekeringspremie (USD)")

Een spreidingsdiagram met verzekeringspremie versus leeftijd van polishouders zonder kinderen. Het toont drie duidelijke clusters.

Introductie tot datavisualisatie met Julia

Een extra dimensie gebruiken

theme(:bright)
@df insurance scatter(
    # Geef drie kolommen door
    :Children,
    :Age,
    :Charges,

group=:Smoker, markersize=4, alpha=0.5, legend_title="Smoker" ) # Aslabels xlabel!("Aantal kinderen") ylabel!("Leeftijd") zlabel!("Verzekeringspremie (USD)")

Een 3D-spreidingsdiagram met verzekeringspremie versus leeftijd en aantal kinderen van polishouders. Het toont dezelfde clusterstructuur voor punten met verschillende aantallen kinderen.

Introductie tot datavisualisatie met Julia

Volgorde van assen

theme(:bright)
@df insurance scatter(

# Verwissel :Age en :Children :Age, :Children, :Charges, group=:Smoker, markersize=4, alpha=0.5, legend_title="Smoker" ) # Aslabels xlabel!("Aantal kinderen") ylabel!("Leeftijd") zlabel!("Verzekeringspremie (USD)")

Introductie tot datavisualisatie met Julia

Groeperen op een andere categorie

Een spreidingsdiagram met verzekeringskosten versus BMI, met punten gekleurd naar rookstatus.

  • Kunnen we groeperen op rookstatus én geslacht?
Introductie tot datavisualisatie met Julia

Een categorische dimensie toevoegen

theme(:vibrant)

@df insurance scatter(
    :BMI,

# Geef categorische kolom door :Sex,
:Charges, group=:Smoker, markersize=2, legend_title="Smoker", color=[:blueviolet :goldenrod1]) xlabel!("BMI") zlabel!("Verzekeringspremie (USD)")

Een 3D-spreidingsdiagram met verzekeringskosten versus BMI en geslacht, met punten gekleurd naar rookstatus.

Introductie tot datavisualisatie met Julia

Puntdichtheid visualiseren

Een spreidingsdiagram met verzekeringskosten versus BMI, met punten gekleurd naar rookstatus.

  • Kunnen we de puntdichtheid duidelijker tonen?
Introductie tot datavisualisatie met Julia

Tweedimensionale histogrammen

# 2D-histogram
@df insurance histogram2d(

:BMI, :Charges,
# Kleurschema vulling fillcolor=:acton,
# Lege bins tonen show_empty_bins=true,
) xlabel!("Leeftijd") ylabel!("Verzekeringspremie (USD)")

Een tweedimensionaal histogram van de verdeling van verzekeringskosten en BMI.

Introductie tot datavisualisatie met Julia

Laten we oefenen!

Introductie tot datavisualisatie met Julia

Preparing Video For Download...