So erstellen sie eine bevölkerungspyramide in python
Eine Bevölkerungspyramide ist ein Diagramm, das die Alters- und Geschlechtsverteilung einer bestimmten Bevölkerung zeigt. Dies 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:
Alterspyramide in Python
Angenommen, wir verfügen über den folgenden Datensatz, der die Gesamtbevölkerung von Männern und Frauen nach Altersgruppe für ein bestimmtes Land anzeigt:
#import libraries import numpy as np import pandas as pd import matplotlib.pyplot as plt #create dataframe 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]}) #view dataframe 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
Mit dem folgenden Code können wir eine Bevölkerungspyramide für die Daten erstellen:
#define x and y limits y = range(0, len(df)) x_male = df['Male'] x_female = df['Female'] #define plot parameters fig, axes = plt.subplots(ncols=2, sharey=True, figsize=(9, 6)) #specify background color and plot title fig.patch.set_facecolor('xkcd:light grey') plt.figtext(.5,.9,"Population Pyramid", fontsize=15, ha='center') #define male and female bars 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') #adjust grid parameters and specify labels for y-axis axes[1].grid() axes[0].set(yticks=y, yticklabels=df['Age']) axes[0].invert_xaxis() axes[0].grid() #displayplot plt.show()
Die Grafik zeigt, dass die Verteilung von Männern und Frauen ziemlich symmetrisch ist, wobei der Großteil der Bevölkerung in die mittlere Altersgruppe fällt. Wenn wir uns einfach diese Grafik ansehen, können wir uns einen guten Überblick über die Demografie dieses bestimmten Landes verschaffen.
Beachten Sie, dass Sie die Farben des Plothintergrunds und einzelner Balken anpassen können, indem Sie die Farben in der Matplotlib-Farbliste angeben.
Beispielsweise könnten wir „hotpink“ und „dodgerblue“ angeben, um sie mit einem „beigen“ Hintergrund zu verwenden:
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()
Sie können die Farbpalette jederzeit ändern, je nachdem, was Ihnen am besten gefällt.