如何在 Python 中使用 plotly 创建人口金字塔?

人口金字塔是人口年龄和性别分布的图形表示 。它由两个背靠背的条形图组成,一个显示男性的分布,另一个显示女性在不同年龄组的分布 。人口金字塔是一个强大的可视化工具,可以帮助我们了解人口的人口构成并识别趋势和模式 。
【如何在 Python 中使用 plotly 创建人口金字塔?】在本文中,我们将探讨如何在中使用创建人口金字塔 。是一个强大的可视化库,允许我们在中创建交互式和动态绘图 。
我们将使用创建一个人口金字塔,该金字塔显示人口的年龄和性别分布 。我们将首先将数据加载到熊猫数据帧中,然后使用创建人口金字塔 。
使用情节表达
是的高级 API,可以轻松创建多种类型的绘图,包括人口金字塔 。我们可以使用 px.bar() 函数来创建构成人口金字塔的两个背靠背条形图 。
请考虑下面显示的代码 。

如何在 Python 中使用 plotly 创建人口金字塔?

文章插图
import plotly.express as px import pandas as pd # Load the data into a pandas DataFrame df = pd.read_csv("population_data.csv") # Create the population pyramid using Plotly Express fig = px.bar(df, x="count", y="age", orientation="h", color="gender",barmode="relative", range_x=[-1, 1]) # Show the plot fig.show()
解释输出
使用绘图图形对象
Graph是的较低级别的 API,它提供了对绘图布局和样式的更大灵活性和控制 。我们可以使用Graph 对象来创建人口金字塔,方法是创建两条条形迹线,一条用于男性,另一条用于女性,然后将它们组合成一个图形 。
请考虑下面显示的代码 。
如何在 Python 中使用 plotly 创建人口金字塔?

文章插图

import plotly.graph_objs as go import pandas as pd # Load the data into a pandas DataFrame df = pd.read_csv("population_data.csv") # Create the male and female bar traces trace_male = go.Bar(x=df[df["gender"]=="M"]["count"],y=df[df["gender"]=="M"]["age"],orientation="h",name="Male",marker=dict(color="#1f77b4")) trace_female = go.Bar(x=df[df["gender"]=="F"]["count"]*(-1),y=df[df["gender"]=="F"]["age"],orientation="h",name="Female",marker=dict(color="#d62728")) # Create the layout layout = go.Layout(title="Population Pyramid",xaxis=dict(title="Count"),yaxis=dict(title="Age"),barmode="overlay",bargap=0.1) # Create the figure fig = go.Figure(data=http://www.kingceram.com/post/[trace_male, trace_female], layout=layout) # Show the plot fig.show()
解释输出
结论
在本文中,我们学习了如何在中使用创建人口金字塔 。我们探索了两种不同的方法来实现这一目标,一种使用熊猫数据透视表,另一种使用图形对象 。我们讨论了每种方法的优缺点,并详细介绍了每种方法中使用的代码 。
按照本文中提供的步骤和示例,您可以使用中的创建自己的人口金字塔,并探索自定义和分析其数据的各种方法 。