如何在 seaborn 中创建堆积条形图(逐步)


堆积条形图是一种图表类型,它使用分为多个子条的条形图来同时可视化多个变量的值。

本教程提供了如何使用Seaborn数据可视化包在 Python 中创建以下堆积条形图的分步示例:

Seaborn中的堆积条形图

第 1 步:创建数据

首先,我们创建以下 pandas DataFrame,显示餐厅周一到周五早上和晚上接待的顾客总数:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' Day ': ['Mon', 'Tue', 'Wed', 'Thur', 'Fri'],
                   ' Morning ': [44, 46, 49, 59, 54],
                   ' Evening ': [33, 46, 50, 49, 60]})

#view DataFrame
df

	Day Morning Evening
0 My 44 33
1 Kills 46 46
2 Wed 49 50
3 Thur 59 49
4 Fri 54 60

第 2 步:创建堆积条形图

我们可以使用以下代码创建一个堆积条形图来可视化每天的客户总数:

 import matplotlib.pyplot as plt
import seaborn as sns

#set seaborn plotting aesthetics
sns. set (style=' white ')

#create stacked bar chart
df. set_index (' Day '). plot (kind=' bar ', stacked= True , color=[' steelblue ', ' red '])

X 轴显示星期几,条形显示每天早上和晚上访问餐厅的顾客数量。

第 3 步:自定义堆积条形图

以下代码演示如何添加轴标题、添加全局标题以及旋转 X 轴标签以使其更易于阅读:

 import matplotlib.pyplot as plt
import seaborn as sns

#set seaborn plotting aesthetics
sns. set (style=' white ')

#create stacked bar chart
df. set_index (' Day '). plot (kind=' bar ', stacked= True , color=[' steelblue ', ' red '])

#add overall title
plt. title (' Customers by Time & Day of Week ', fontsize= 16 )

#add axis titles
plt. xlabel (' Day of Week ')
plt. ylabel (' Number of Customers ')

#rotate x-axis labels
plt. xticks (rotation= 45 )

Seaborn中的堆积条形图

注意:我们将此图的海洋风格设置为“白色”,但您可以在此页面上找到海洋图美学的完整列表。

其他资源

以下教程介绍了如何在 Seaborn 中创建其他常见可视化:

如何在 Seaborn 中创建饼图
如何在 Seaborn 中创建时间序列图
如何在 Seaborn 中创建面积图

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注