Eine Bevölkerungspyramide ist eine Grafik, die die Alters- und Geschlechtsverteilung einer bestimmten Bevölkerung zeigt. Es ist nützlich, um die Zusammensetzung einer Bevölkerung und den Trend des Bevölkerungswachstums zu verstehen.

In diesem Tutorial wird erklärt, wie Sie die folgende Bevölkerungspyramide in Python erstellen:

Bevölkerungspyramide in Python

Bevölkerungspyramide in Python

Angenommen, wir haben den folgenden Datensatz, der die Gesamtbevölkerung von Männern und Frauen nach Altersgruppen für ein bestimmtes Land anzeigt:

# Bibliotheken importieren 
import numpy as np
import pandas as pd 
import matplotlib.pyplot as plt

# Dataframe erstellen
df = pd.DataFrame({'Age': ['0-9','10-19','20-29','30-39','40-49','50-59','60-69','70-79','80-89','90+'], 
                    'Male': [9000, 14000, 22000, 26000, 34000, 32000, 29000, 22000, 14000, 3000], 
                    'Female': [8000, 15000, 19000, 28000, 35000, 34000, 28000, 24000, 17000, 5000]})

#Dataframe anzeigen
df

    Age  Male Female
0   0-9  9000   8000
1 10-19 14000  15000
2 20-29 22000  19000
3 30-39 26000  28000
4 40-49 34000  35000
5 50-59 32000  34000
6 60-69 29000  28000
7 70-79 22000  24000
8 80-89 14000  17000
9   90+  3000   5000

Wir können den folgenden Code verwenden, um eine Bevölkerungspyramide für die Daten zu erstellen:

# Definieren der x- und y-Grenzen
y = range(0, len(df))
x_male = df['Male']
x_female = df['Female']

#Plotparameter definieren
fig, axes = plt.subplots(ncols=2, sharey=True, figsize=(9, 6))

# Hintergrundfarbe und Plot-Titel angeben
fig.patch.set_facecolor('xkcd:light grey')
plt.figtext(.5,.9,"Population Pyramid ", fontsize=15, ha='center')

# männliche und weibliche Balken definieren
axes[0].barh(y, x_male, align='center', color='royalblue')
axes[0].set(title='Males')
axes[1].barh(y, x_female, align='center', color='lightpink')
axes[1].set(title='Females')

# Passen Sie die Rasterparameter an und geben Sie Beschriftungen für die y-Achse an
axes[1].grid()
axes[0].set(yticks=y, yticklabels=df['Age'])
axes[0].invert_xaxis()
axes[0].grid()

#Plot anzeigen
plt.show()

Bevölkerungspyramide in Python

Aus der Darstellung können wir ersehen, dass die Verteilung von Männern und Frauen ziemlich symmetrisch ist, wobei der größte Teil der Bevölkerung im mittleren Alter liegt. Wenn wir uns nur dieses Diagramm ansehen, können wir eine anständige Vorstellung von der Demografie dieses bestimmten Landes bekommen.

Beachten Sie, dass Sie die Farben des Plot-Hintergrunds und der einzelnen Balken anpassen können, indem Sie Farben aus der Matplotlib-Farbliste angeben.

Zum Beispiel könnten wir 'hotpink' und 'dodgerblue' angeben, die mit einem 'beige' Hintergrund verwendet werden sollen:

fig.patch.set_facecolor('xkcd:beige')

axes[0].barh(y, x_male, align='center', color='dodgerblue')

axes[1].barh(y, x_female, align='center', color='hotpink')

plt.show()

Populationspyramide in Python mit unterschiedlichem Farbschema

Sie können das Farbschema jederzeit ändern, je nachdem, was Ihrer Meinung nach am besten aussieht.

Statistik: Der Weg zur Datenanalyse

* Amazon Affiliate Link


Das könnte Sie auch interessieren: