Python Seaborn 绘制双变量分布图形
1、使用 scatterplot 绘制双变量分布
scatterplot()
函数用于绘制双变量分布图形,通常用于研究两个变量之间的关系。使用scatterplot()函数可以绘制两个变量之间的散点图。常用参数如下,
参数 |
描述 |
x |
x轴上的数据。 |
y |
y轴上的数据。 |
hue |
用于分组数据的列名,不同组使用不同颜色。 |
style |
用于区分不同组的列名,不同组使用不同标记样式。 |
size |
表示数据点大小的列名,根据列值调整数据点大小。 |
data |
包含数据的DataFrame。 |
palette |
调色板,用于设置颜色。 |
sizes |
用于设置不同大小的数据点。 |
estimator |
用于每个分组内计算统计量的函数,如 numpy.mean 。 |
ci |
置信区间的大小。 |
markers |
控制是否显示标记。 |
x_jitter |
控制x轴上的抖动。 |
y_jitter |
控制y轴上的抖动。 |
legend |
控制图例的显示方式。 |
ax |
绘图的Axes对象,可指定图形绘制位置。 |
使用示例:
import seaborn as sns import matplotlib.pyplot as plt # 示例数据 import pandas as pd data = pd.DataFrame({ "X": [1, 2, 3, 4, 5], "Y": [2, 4, 1, 3, 5], "Group": ["A", "A", "B", "B", "C"], "Size": [10, 20, 30, 40, 50] }) # 创建散点图 sns.scatterplot(x="X", y="Y", hue="Group", style="Group", size="Size", data=data, palette="Set1", sizes=(100, 200), legend="full") # 添加标题 plt.title("cjavapy") # 显示图例 plt.legend(title="Groups") # 使用 plt.draw() 显示画布 plt.draw() # 显示图形 plt.show()
2、使用 jointplot 绘制双变量分布
jointplot()
函数用于绘制双变量分布图,通常用于可视化两个变量之间的关系。可以根据自己的数据和需求来调整这些参数,以创建不同类型的双变量分布图。常用参数如下,
参数 |
描述 |
x |
指定 x 轴的数据 |
y |
指定 y 轴的数据 |
data |
包含数据的 DataFrame |
kind |
绘图的类型{ “scatter” | “kde” | “hist” | “hex” | “reg” | “resid” } |
color |
指定绘图的颜色 |
height |
图形的高度 |
ratio |
联合图中散点图和轴的高宽比 |
space |
联合图中轴之间的空间 |
dropna |
是否删除包含 NaN 值的行 |
xlim 和 ylim |
设置 x 和 y 轴的限制 |
joint_kws |
传递给散点图或其他绘图类型的其他参数 |
使用示例:
3、使用 pairplot 绘制双变量分布
当同时查看多个双变量分布时,pairplot()
函数非常有用。它会创建一个网格,展示数据集中每对变量的关系。pairplot()
函数用于绘制数据集中多个变量之间的关系图,通常用于研究变量之间的相关性。常用参数如下,
参数 |
描述 |
data |
包含数据的 DataFrame 对象 |
hue |
用于分组数据的列名 |
vars |
要绘制的特定列的列表,如果为 None,则绘制所有列 |
kind |
图的类型{‘scatter’, ‘kde’, ‘hist’, ‘reg’} |
diag_kind |
对角线上的图的类型{‘auto’, ‘hist’, ‘kde’, None} |
markers |
不同组的数据点标记样式 |
palette |
调色板名称或颜色映射,用于控制不同组的颜色 |
height |
每个子图的高度(以英寸为单位) |
aspect |
每个子图的宽高比 |
plot_kws |
传递给绘图函数的其他关键字参数 |
diag_kws |
传递给对角线图的其他关键字参数 |
使用示例: