So erstellen sie ein pareto-diagramm in python (schritt für schritt)
Ein Pareto-Diagramm ist ein Diagrammtyp, der geordnete Häufigkeiten von Kategorien sowie kumulative Häufigkeiten von Kategorien anzeigt.
Dieses Tutorial bietet ein schrittweises Beispiel für die Erstellung eines Pareto-Diagramms in Python.
Schritt 1: Erstellen Sie die Daten
Angenommen, wir führen eine Umfrage durch, bei der wir 350 verschiedene Personen bitten, ihre Lieblingsgetreidemarke zwischen den Marken A, B, C, D und E zu nennen.
Wir können den folgenden Pandas-DataFrame erstellen, um die Umfrageergebnisse zu speichern:
import pandas as pd #createDataFrame df = pd. DataFrame ({' count ': [97, 140, 58, 6, 17, 32]}) df. index = ['B', 'A', 'C', 'F', 'E', 'D'] #sort DataFrame by count descending df = df. sort_values (by=' count ', ascending= False ) #add column to display cumulative percentage df[' cumperc '] = df[' count ']. cumsum ()/df[' count ']. sum ()*100 #view DataFrame df count cumperc At 140 40.000000 B 97 67.714286 C 58 84.285714 D 32 93.428571 E 17 98.285714 F 6 100.000000
Schritt 2: Erstellen Sie das Pareto-Diagramm
Wir können den folgenden Code verwenden, um das Pareto-Diagramm zu erstellen:
import matplotlib. pyplot as plt
from matplotlib. ticker import PercentFormatter
#define aesthetics for plot
color1 = ' steelblue '
color2 = ' red '
line_size = 4
#create basic bar plot
fig, ax = plt. subplots ()
ax. bar (df. index , df[' count '], color=color1)
#add cumulative percentage line to plot
ax2 = ax. twinx ()
ax2. plot ( df.index , df[' cumperc '], color=color2, marker=" D ", ms=line_size)
ax2. yaxis . set_major_formatter (PercentFormatter())
#specify axis colors
ax. tick_params (axis=' y ', colors=color1)
ax2. tick_params (axis=' y ', colors=color2)
#display Pareto chart
plt. show ()
Auf der X-Achse werden die verschiedenen Marken in der Reihenfolge der höchsten bis niedrigsten Häufigkeit angezeigt.
Die linke Y-Achse zeigt die Häufigkeit jeder Marke und die rechte Y-Achse zeigt die kumulative Häufigkeit der Marken.
Wir können zum Beispiel sehen:
- Marke A macht etwa 40 % der gesamten Umfrageantworten aus.
- Die Marken A und B machen etwa 70 % der gesamten Umfrageantworten aus.
- Die Marken A, B und C machen etwa 85 % der gesamten Umfrageantworten aus.
Und so weiter.
Schritt 3: Passen Sie das Pareto-Diagramm an (optional)
Sie können die Balkenfarben und die Größe der kumulativen Prozentlinie ändern, um dem Pareto-Diagramm das gewünschte Aussehen zu verleihen.
Wir könnten zum Beispiel die Balken in Rosa und die Linie in Lila und etwas dicker ändern:
import matplotlib. pyplot as plt
from matplotlib. ticker import PercentFormatter
#define aesthetics for plot
color1 = ' pink '
color2 = ' purple '
line_size = 6
#create basic bar plot
fig, ax = plt. subplots ()
ax. bar (df. index , df[' count '], color=color1)
#add cumulative percentage line to plot
ax2 = ax. twinx ()
ax2. plot (df.index , df[' cumperc '], color=color2, marker=" D ", ms=line_size )
ax2. yaxis . set_major_formatter (PercentFormatter())
#specify axis colors
ax. tick_params (axis=' y ', colors=color1)
ax2. tick_params (axis=' y ', colors=color2)
#display Pareto chart
plt. show ()
Zusätzliche Ressourcen
Die folgenden Tutorials erklären, wie Sie andere gängige Visualisierungen in Python erstellen:
So erstellen Sie eine Glockenkurve in Python
So erstellen Sie ein Ogive-Diagramm in Python
So erstellen Sie ein Stamm- und Blattdiagramm in Python