如何在 Seaborn 中创建饼图?
数据可视化中最常用的图形类型之一是饼图。饼图是一种圆形图表,被分成多个部分来表示数据集中不同类别的比例。
Seaborn 是一个 Python 数据可视化库,它建立在 Matplotlib 之上,Matplotlib 是另一个流行的 Python 可视化库。Seaborn 提供了一个用于创建各种统计图形的高级接口,并且可以生成比 Matplotlib 更复杂、更美观的可视化效果。
Matplotlib 是一个用于在 Python 中创建基本图形和图表的低级库。它提供了创建更复杂可视化的构建块,但需要比 Seaborn 更多的代码来生成可视化效果。Seaborn 通过提供一组默认主题和美学简化了创建复杂可视化的过程。
Seaborn 提供了一组函数,用于创建各种类型的统计图,例如散点图、线图和条形图。它还提供了用于创建更专业类型的图的函数,例如热图、小提琴图和因子图。这些图旨在突出显示数据中的关系和模式。
以下是使用 Python 安装 Seaborn 和 Matplotlib 的步骤 -
打开命令提示符或终端窗口。
通过键入以下命令检查您的系统上是否安装了 Python:python --version
如果安装了 Python,则会显示版本号。如果未安装 Python,请从官方网站下载并安装 Python。
使用 pip 安装 Seaborn,输入以下命令:"pip3 install seaborn"
使用 pip 安装 Matplotlib,输入以下命令:"pip3 install matplotlib"
现在让我们关注示例。
示例
考虑下面显示的代码。
# 导入库 import matplotlib.pyplot as plt import seaborn as sns # 声明数据 # 示例数据,用您自己的数据替换 data = [76, 84, 62, 93, 79] # 数据标签,用您自己的数据替换 keys = ['Class A', 'Class B', 'Class C', 'Class D', 'Class E'] # 在图表上绘制数据 plt.pie(data, labels=keys, autopct='%.0f%%') # 为图表添加标题 plt.title('不同类别的成绩分布') # 显示图表 plt.show()
解释
我们声明 data 变量,其中包含每个类别的值列表,以及 keys 变量,其中包含每个类别的标签。
我们使用 seaborn.color_palette() 函数定义用于图表的调色板。
我们使用 plt.pie() 函数在图表上绘制数据。我们传入 data、keys、colours 和 autopct 参数来自定义图表的外观。autopct 参数会格式化图表上显示的百分比。
我们使用 plt.title() 函数为图表添加标题。
我们使用 plt.show() 函数显示图表。
输出
执行此代码后,将弹出一个新窗口,其中包含我们的饼图。
示例
让我们再举一个例子来更好地理解它的工作原理。考虑下面显示的代码。
# 导入库 import matplotlib.pyplot as plt import seaborn as sns # 声明数据 # 样本数据,用您自己的数据替换 data = [60, 25, 35, 45, 55] # 数据标签,用您自己的数据替换 keys = ['Category A', 'Category B', 'Category C', 'Category D', 'Category E'] # 声明爆炸饼图 explode = [0.1, 0, 0, 0, 0.1] # 定义要使用的 Seaborn 调色板 palette_color = sns.color_palette('dark') # 在图表上绘制数据 plt.pie(data, labels=keys, colors=palette_color, explode=explode, autopct='%.0f%%') # 为图表添加标题 plt.title('不同类别的项目分布') # 显示图表 plt.show()
解释
我们已更新 data 变量,以包含每个类别的一组新值。您可以将其替换为自己的数值。
我们已更新 keys 变量,以包含每个类别的新标签。您可以将其替换为自己的数值。
我们已声明一个explode变量,它指定饼图的每个切片的爆炸程度。在此示例中,我们已爆炸第一个和最后一个切片。您可以根据需要对其进行修改。
我们已更新 Seaborn 调色板,以使用深色配色方案。如果您愿意,可以选择其他调色板。
我们使用 plt.title() 函数为图表添加了标题。
我们使用 plt.show() 函数显示了图表。
输出
运行此代码后,将弹出一个新窗口,其中包含我们的饼图。
结论
总之,使用 Seaborn 和 Matplotlib 创建饼图是一个简单的过程,只需几个步骤即可完成。通过导入必要的库、声明数据和定义调色板,您可以轻松绘制一个显示不同类别值分布的饼图。