安装和入门#

seaborn 的官方版本可以从 PyPI 安装

pip install seaborn

pip 的基本调用将安装 seaborn,并在必要时安装其强制依赖项。可以选择包含可选依赖项,这些依赖项可提供一些高级功能

pip install seaborn[stats]

该库也被包含在 Anaconda 发行版中,可以使用 conda 安装

conda install seaborn

由于主要 Anaconda 存储库添加新版本的效率较低,因此您可能更倾向于使用 conda-forge 频道

conda install seaborn -c conda-forge

依赖项#

支持的 Python 版本#

  • Python 3.8+

强制依赖项#

可选依赖项#

  • statsmodels,用于高级回归图

  • scipy,用于聚类矩阵和一些高级选项

  • fastcluster,更快地对大型矩阵进行聚类

快速入门#

安装 seaborn 后,您就可以开始使用它了。要测试它,您可以加载并绘制一个示例数据集

import seaborn as sns
df = sns.load_dataset("penguins")
sns.pairplot(df, hue="species")

如果您在启用了 matplotlib 模式 的 Jupyter 笔记本或 IPython 终端中工作,您应该立即看到 该图。否则,您可能需要显式调用 matplotlib.pyplot.show()

import matplotlib.pyplot as plt
plt.show()

虽然您只需要导入 seaborn 就可以走得很远,但访问 matplotlib 函数通常很有用。教程和 API 文档通常假设以下导入

import numpy as np
import pandas as pd

import matplotlib as mpl
import matplotlib.pyplot as plt

import seaborn as sns
import seaborn.objects as so

调试安装问题#

seaborn 代码库是纯 Python,该库通常可以毫无问题地安装。有时,由于依赖项包含已编译代码并链接到系统库,因此会遇到困难。这些困难通常表现为导入时的错误,并显示诸如 "DLL load failed" 之类的消息。要调试此类问题,请阅读异常跟踪以确定哪个特定库无法导入,然后查阅该软件包的安装文档以查看是否有针对您的特定系统的提示。

在某些情况下,seaborn 的安装似乎已成功,但尝试导入它会导致出现错误,显示消息 "No module named seaborn"。这通常意味着您的系统上有多个 Python 安装,并且您的 pipconda 指向的安装位置与您的解释器所在的安装位置不同。解决此问题需要整理系统上的路径,但有时可以通过使用 python -m pip install seaborn 调用 pip 来避免。

获取帮助#

如果您认为在 seaborn 中遇到了错误,请在 GitHub 问题跟踪器 上报告它。为了有用,错误报告必须包含以下信息

  • 一个可重现的代码示例,用于演示问题

  • 您看到的结果(图形的图像或错误消息)

  • 清楚地解释为什么您认为有些地方不对

  • 您正在使用的 seaborn 和 matplotlib 的具体版本

如果可以使用 seaborn 文档中的示例数据集之一(即使用 load_dataset())来演示错误报告,则更容易解决。否则,最好让您的示例生成合成数据来重现问题。如果您只能使用实际数据集演示问题,则需要共享它,理想情况下应以 csv 格式共享。

如果您遇到错误,在打开新问题之前搜索消息的具体文本通常可以帮助您快速解决问题并避免重复报告。

由于 matplotlib 处理实际渲染,因此错误或不正确的输出可能是由于 matplotlib 中的问题而不是 seaborn 中的问题。如果您尝试在仅使用 matplotlib 的示例中重现问题,可以节省时间,这样您就可以在正确的位置报告问题。但如果您不清楚如何操作,可以跳过此步骤。

一般支持问题更适合在 stackoverflow 上提出,那里有更多的人会看到您的帖子,并且可能提供帮助。如果您包含 可运行代码、您希望实现的目标的精确陈述以及对您遇到的问题的清楚解释,则您获得快速答案的机会会更高。