Seaborn学习笔记

Seaborn是Python的数据可视化库,基于matplotlib,与Pandas紧密集成。它提供了一种高级接口,用于绘制统计图形,如散点图、线图、直方图等,同时支持统计估计和误差线,便于数据探索和理解。Seaborn通过声明式API简化了多维数据集的复合视图,如relplot()、catplot()和pairplot(),并且有个性化的默认样式,同时允许灵活的自定义选项。它与matplotlib的关系使得用户可以在各种环境中使用Seaborn,包括交互式分析和出版质量的图形输出。
摘要由CSDN通过智能技术生成

原文:http://seaborn.pydata.org/introduction.html

Seaborn简介

Seaborn是一个用Python制作统计图形的库。它建立在matplotlib之上,并与Pandas数据结构紧密集成。

Seaborn可帮助您探索和理解您的数据。它的绘图功能对包含整个数据集的数据框和数组进行操作,并在内部执行必要的语义映射和统计聚合以生成信息图。其面向数据集的声明式API让您可以专注于绘图的不同元素的含义,而不是如何绘制它们的细节。

1. 我们的第一个seaborn图

这是seaborn可以做什么的一个例子:

# Import seaborn
import seaborn as sns

# Apply the default theme
sns.set_theme()

# Load an example dataset
tips = sns.load_dataset("tips")

# Create a visualization
sns.relplot(
    data=tips,
    x="total_bill", y="tip", col="time",
    hue="smoker", style="smoker", size="size",
)

在这里插入图片描述
这里发生了一些事情。 让我们一一介绍:

# Import seaborn
import seaborn as sns

Seaborn 是我们需要为这个简单示例导入的唯一库。按照惯例,它是用缩写sns导入的。

在幕后,seaborn使用matplotlib绘制绘图。对于交互式工作,建议在matplotlib模式下使用Jupyter或IPython接口,否则,当您想查看绘图时,必须调用 matplotlib.pyplot.show()。

# Apply the default theme
sns.set_theme()

这使用了matplotlib rcParam系统,并且会影响所有matplotlib图的外观,即使您没有使用seaborn制作它们。除了默认主题之外,还有其他几个选项,您可以独立控制绘图的样式和缩放比例,以在演示上下文之间快速转换您的工作(例如,制作在演讲期间投影时具有可读字体的图形版本)。如果您喜欢matplotlib默认值或喜欢不同的主题,您可以跳过这一步并仍然使用seaborn绘图功能。

(注:出现错误提示module ‘seaborn’ has no attribute ‘set_theme’,可能为Seaborn版本较老,在cmd中使用指令pip install -U seaborn即可)

# Load an example dataset
tips = sns.load_dataset("tips")

文档中的大多数代码将使用load_dataset()函数来快速访问示例数据集。这些数据集没有什么特别之处:它们只是Pandas数据帧,我们可以使用 pandas.read_csv()加载它们或手动构建它们。文档中的大多数示例将使用Pandas数据框指定数据,但seaborn对于它接受的数据结构非常灵活。

(注:若出现错误“TimeoutError: [WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败”,可能为计算机C:/user/用户名/ 文件夹内无seaborn-data文件夹,该文件夹可在https://github.com/mwaskom/seaborn-data下载)

# Create a visualization
sns.relplot(
    data=tips,
    x="total_bill", y="tip", col="time",
    hue="smoker", style="smoker", size="size",
)

该图采用对seaborn函数relplot()的一次调用,显示了tips数据集中五个变量之间的关系。注意我们是如何仅提供变量的名称及其在图中的作用的。与直接使用matplotlib不同,我们没有必要根据颜色值或标记代码指定绘图元素的属性。在幕后,seaborn处理了从数据帧中的值到matplotlib理解的参数的转换。这种声明式方法让您可以专注于想要回答的问题,而不是关注如何控制matplotlib的细节。

2. 跨可视化的API抽象

没有普适的方式来可视化数据。不同的问题最好用不同的图来回答。通过使用一致的面向数据集的API,Seaborn可以轻松地在不同的视觉表示之间切换。

函数relplot()以这种方式命名是因为它旨在可视化许多不同的统计关系。虽然散点图通常很有效,但用一条线更好地表示一个变量代表时间度量的关系。relplot()函数有一个方便的kind参数,可让您轻松切换到此替代表示:

Seaborn是在matplotlib的基础上进行了更高级的封装,可以更方便地绘制各种精美和方便分析数据的图表。其中,直方图是Seaborn中的一种常见图表之一。直方图用来展示数据的分布情况,通过将数据划分为不同的分组(也称为bin),并统计每个分组中的数据数量来展示数据的分布情况。 在Seaborn中,通过histplot函数可以绘制直方图。可以使用不同的参数来控制直方图的外观和展示方式。例如,可以自定义直方图的颜色、线条样式和填充方式等。另外,还可以添加边界箱线图(boxplot)来同时展示数据的分布和离群值的情况。 此外,Seaborn还提供了边际图(marginal plot)的功能。边际图可以很好地展示两个数值变量之间的关系。通常中央图表显示两个变量的相关性,可以是散点图、hexbin图、2D直方图或2D密度图。边缘图通常在顶部和右侧,使用直方图或密度图显示两个变量的分布。可以使用kind参数来指定不同类型的边际图,如scatter(散点图)、reg(边界回归图)、resid(边界残差图)、kde(边界核密度图)或hex(边界六角图)。 下面是使用Seaborn绘制直方图的示例代码: import seaborn as sns sns.histplot(data=df, x="sepal_length") 这段代码将通过Seaborn绘制一个直方图,其中数据来自DataFrame df,x轴表示sepal_length列的数据。你可以根据需要进行相应的修改和定制。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [python-seaborn库数据可视化{直方图、散点图、箱线图、变量关系图、热力图、条形图}](https://blog.csdn.net/weixin_57501965/article/details/126625267)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [[seaborn] seaborn学习笔记3-直方图Histogramplot](https://blog.csdn.net/LuohenYJ/article/details/90704424)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值