- Seaborn 教程
- Seaborn - 首页
- Seaborn - 简介
- Seaborn - 环境设置
- 导入数据集和库
- Seaborn - 图形美观
- Seaborn - 调色板
- Seaborn - 直方图
- Seaborn - 核密度估计
- 可视化成对关系
- Seaborn - 绘制分类数据
- 观测值的分布
- Seaborn - 统计估计
- Seaborn - 绘制宽格式数据
- 多面板分类图
- Seaborn - 线性关系
- Seaborn - Facet Grid
- Seaborn - Pair Grid
- 函数参考
- Seaborn - 函数参考
- Seaborn 有用资源
- Seaborn - 快速指南
- Seaborn - 有用资源
- Seaborn - 讨论
Seaborn.rugplot() 方法
Seaborn.rugplot() 方法用于绘制边缘分布,并允许沿着 x 轴和 y 轴绘制刻度。通过清晰地显示单个观测值的位置,此函数旨在补充现有的显示。
因此,rugplot() 方法实质上是在已经存在的图上添加地毯或刻度。
但是什么是地毯图?地毯图是一种图表,它绘制单个定量值的数据,并将其显示为沿着轴的标记。这些图通常用于二维散点图,方法是在 x 轴上标记 x 值的地毯图,在 y 轴上标记 y 值的地毯图。
语法
以下是Seaborn.rugplot() 方法的语法:
seaborn.rugplot(x=None, *, height=0.025, axis=None, ax=None, data=None, y=None, hue=None, palette=None, hue_order=None, hue_norm=None, expand_margins=True, legend=True, a=None, **kwargs
参数
下面讨论了此方法的一些参数。
序号 | 参数及描述 |
---|---|
1 | x,y 表示在 x,y 轴上的变量。 |
2 | 数据 用于传递用于绘图的数据集。 |
3 | 高度 此参数取一个值,该值确定每个地毯元素覆盖的轴范围的比例。 |
4 | 调色板 当考虑色相映射时,此参数设置图表的颜色。 |
5 | Hue_order 在色相语义中绘制分类变量的顺序。 |
6 | Hue_norm 用于设置色相语义中数据单位的归一化范围。提供一对数据值。 |
7 | Ax 预期通过此参数传递用于绘图的预先存在的轴。 |
8 | Expand_margins 取布尔值,如果传递 True,则应根据地毯的高度增加轴的边距,以防止元素重叠。 |
9 | 图例 布尔值。如果为 false,则不打印语义变量的图例。 |
返回值
此方法返回包含绘图点的 matplotlib 轴。
加载 seaborn 库
在继续开发绘图之前,让我们加载 seaborn 库和数据集。要加载或导入 seaborn 库,可以使用以下代码行。
Import seaborn as sns
加载数据集
在本文中,我们将使用 seaborn 库中内置的 Tips 数据集。以下命令用于加载数据集。
tips=sns.load_dataset("tips")
以下提到的命令用于查看数据集中前 5 行。这使我们能够了解可以使用哪些变量来绘制图表。
tips.head()
以下是上述代码段的输出。
index,total_bill,tip,sex,smoker,day,time,size 0,16.99,1.01,Female,No,Sun,Dinner,2 1,10.34,1.66,Male,No,Sun,Dinner,3 2,21.01,3.5,Male,No,Sun,Dinner,3 3,23.68,3.31,Male,No,Sun,Dinner,2 4,24.59,3.61,Female,No,Sun,Dinner,4
现在我们已经加载了数据,我们将继续绘制数据。
示例 1
在此示例中,我们将了解如何在图中沿一个轴添加地毯。为此,对于 x 轴,下面提到了代码。
import seaborn as sns import matplotlib.pyplot as plt tips=sns.load_dataset("tips") tips.head() sns.kdeplot(data=tips, x="tip") sns.rugplot(data=tips, x="tip") plt.show()
输出
该图将类似于下图所示。
要在 y 轴上绘制地毯,可以使用以下代码。
import seaborn as sns import matplotlib.pyplot as plt tips=sns.load_dataset("tips") tips.head() sns.kdeplot(data=tips, y="tip") sns.rugplot(data=tips, y="tip") plt.show()
该图将类似于下图所示。
示例 2
在此示例中,我们将了解如何在给定图中的两个轴上绘制地毯。
import seaborn as sns import matplotlib.pyplot as plt tips=sns.load_dataset("tips") tips.head() sns.kdeplot(data=tips, x="tip",y="total_bill") sns.rugplot(data=tips, x="tip",y="total_bill") plt.show()
输出
该图将类似于下面提到的图。
示例 3
在需要沿着图的轴绘制更高地毯并表示色相映射的情况下,可以使用以下代码。在这里,height 参数可用于指定地毯的高度,hue 参数用于指定色相映射。
import seaborn as sns import matplotlib.pyplot as plt tips=sns.load_dataset("tips") tips.head() sns.kdeplot(data=tips, x="tip",y="total_bill",hue="time") sns.rugplot(data=tips, x="tip",y="total_bill",hue="time",height=.1) plt.show()
输出
此场景的图表可以在下面看到。
示例 4
为了确保地毯在轴之外而不是在图内。可以使用 clip_on 参数。它采用布尔值,如果为 False,则将地毯置于轴之外。
import seaborn as sns import matplotlib.pyplot as plt tips=sns.load_dataset("tips") tips.head() sns.kdeplot(data=tips, x="tip",y="total_bill") sns.rugplot(data=tips, x="tip",y="total_bill",height=-0.04,clip_on=False) plt.show()
输出
此代码的输出如下
这样,就可以使用 rugplot() 方法及其参数。