Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Oprettelse af Swarm Plots | Sektion
Statistisk Visualisering med Seaborn

bookOprettelse af Swarm Plots

swarmplot ligner meget stripplot, men har en væsentlig fordel: punkterne overlapper ikke.

I en stripplot bruges "jitter" til tilfældigt at sprede punkterne, så de ikke ligger oven på hinanden, men overlap kan stadig forekomme. swarmplot anvender en specifik algoritme til at justere punkterne langs den kategoriske akse, så de danner en tydelig, ikke-overlappende form, der afspejler fordelingen af dataene (svarende til et violinplot).

Centrale parametre

  • dodge=True: når der bruges en hue-variabel (f.eks. opdeling af rygere vs. ikke-rygere), adskiller denne parameter grupperne i separate "sværme" side om side i stedet for at blande dem;
  • linewidth: tilføjer en kant omkring hvert punkt, hvilket gør dem tydelige, selv hvis de er små.

Eksempel

Her ses, hvordan dodge ændrer visualiseringen. Bemærk, hvordan de blå og orange punkter er adskilt.

1234567891011121314151617
import seaborn as sns import matplotlib.pyplot as plt # Load dataset df = sns.load_dataset('tips') # Create a swarmplot sns.swarmplot( data=df, x='day', y='total_bill', hue='sex', dodge=True, # Separate Male/Female into side-by-side swarms size=4 ) plt.show()
copy
Opgave

Swipe to start coding

Visualisering af fordelingen af drikkepenge ved hjælp af et swarmplot med særskilt styling.

  1. Indstil stilen til 'whitegrid'. Angiv en ordbog for at sætte 'axes.facecolor' til 'seashell'.
  2. Opret et swarmplot ved brug af datasættet tips (df):
  • Kortlæg 'day' til x, 'total_bill' til y, og 'sex' til hue.
  • Indstil punktets size til 2 for at få plads til flere punkter uden overlap.
  • Tilføj en kant til punkterne med linewidth=1.
  • Adskil kategorierne (male/female) side om side ved at sætte dodge=True.
  • Brug paletten 'rocket'.
  1. Vis plottet.

Løsning

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 1. Kapitel 10
single

single

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

close

bookOprettelse af Swarm Plots

Stryg for at vise menuen

swarmplot ligner meget stripplot, men har en væsentlig fordel: punkterne overlapper ikke.

I en stripplot bruges "jitter" til tilfældigt at sprede punkterne, så de ikke ligger oven på hinanden, men overlap kan stadig forekomme. swarmplot anvender en specifik algoritme til at justere punkterne langs den kategoriske akse, så de danner en tydelig, ikke-overlappende form, der afspejler fordelingen af dataene (svarende til et violinplot).

Centrale parametre

  • dodge=True: når der bruges en hue-variabel (f.eks. opdeling af rygere vs. ikke-rygere), adskiller denne parameter grupperne i separate "sværme" side om side i stedet for at blande dem;
  • linewidth: tilføjer en kant omkring hvert punkt, hvilket gør dem tydelige, selv hvis de er små.

Eksempel

Her ses, hvordan dodge ændrer visualiseringen. Bemærk, hvordan de blå og orange punkter er adskilt.

1234567891011121314151617
import seaborn as sns import matplotlib.pyplot as plt # Load dataset df = sns.load_dataset('tips') # Create a swarmplot sns.swarmplot( data=df, x='day', y='total_bill', hue='sex', dodge=True, # Separate Male/Female into side-by-side swarms size=4 ) plt.show()
copy
Opgave

Swipe to start coding

Visualisering af fordelingen af drikkepenge ved hjælp af et swarmplot med særskilt styling.

  1. Indstil stilen til 'whitegrid'. Angiv en ordbog for at sætte 'axes.facecolor' til 'seashell'.
  2. Opret et swarmplot ved brug af datasættet tips (df):
  • Kortlæg 'day' til x, 'total_bill' til y, og 'sex' til hue.
  • Indstil punktets size til 2 for at få plads til flere punkter uden overlap.
  • Tilføj en kant til punkterne med linewidth=1.
  • Adskil kategorierne (male/female) side om side ved at sætte dodge=True.
  • Brug paletten 'rocket'.
  1. Vis plottet.

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 1. Kapitel 10
single

single

some-alt