Seaborn之简单绘图--散点图

1.绘图函数

seaborn.scatterplot(x=None, y=None, hue=None, style=None, size=None, data=None, palette=None, hue_order=None, hue_norm=None, sizes=None, size_order=None, size_norm=None, markers=True, style_order=None, x_bins=None, y_bins=None, units=None, estimator=None, ci=95, n_boot=1000, alpha='auto', x_jitter=None, y_jitter=None, legend='brief', ax=None, **kwargs)

2.主要参数解释

绘制几个语义分组的散点图。数据的不同子集的 x 和 y 之间的关系可以用 hue, size, style 这三个参数来控制绘图属性。 这些参数控制用于识别不同子集的视觉语义信息,三种语义类型全部使用的话可以独立显示三个维度, 但是这种风格的绘图很难解释或者说没大部分时候什么效果。使用过多的语义信息 (例如:对同一个变量同时使用 hue 和 style)对作图来说是很有帮助同时也更容易理解。
x, y: data 或是向量 data 里面的变量名字,可选择
输入数据的变量,必须是数字,可以直接传递数据或引用数据中的列

hue: data 或是向量 data 里面的变量名字,类别或数值数据都行,可选择

将产生不同颜色的点的变量进行分组,可以是类别也可以是数字

style: data 或是向量 data 里面的变量名字,类别或数值数据都行,可选择

将产生不同标记的点的变量进行分类,可以有一个数字类型,但是这个数字会被当作类别

data: DataFrame数据类型

dataframe中 它的每一列是一个变量,每一行是一个观测值

sizes: 列表,字典或元组,类别或数值数据都行,可选

当使用 size 的时候,用来决定如何选择 sizes 的一个对象。可以一直是一个包含 size 数值的列表, 或者是一个映射变量 size 级别到 sizes 的字典。当 size 是数字时,sizes 可以是包含 size 最大值 和最小值的元组,其他的值都会标准化到这个元组指定的范围

以及等等其他参数具体可参考:seaborn0.9中文文档

3.例子如下

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
index = pd.date_range('2000-01-01', periods=100, freq='m', name='date')
data = np.random.randn(100, 4).cumsum(axis=0)
#print(data)
wide_df = pd.DataFrame(data, index, columns=['a', 'b', 'c', 'd'])
wide_df['style'] = np.nan
wide_df['style'][0:50] = 'A'
wide_df['style'][50:100] = 'B'
# print(wide_df.tail())
# hue参数,颜色区分数据类别
ax = sns.scatterplot(x='a', y='b', hue='style', data=wide_df)
plt.title('Scatter of hue')
plt.grid()
plt.show()

图像如下:
Seaborn之简单绘图--散点图

#style参数,不同标记区分数据类别
ax = sns.scatterplot(x='a', y='b', hue='style', data=wide_df)
plt.title('Scatter of style')
plt.grid()
plt.show()

图像如下:
Seaborn之简单绘图--散点图

#size参数,不同散点大小区分数据类别
x = sns.scatterplot(x='a', y='b', size='c', data=wide_df)
plt.title('Scatter of size')
plt.grid()
plt.show()

图形如下:
Seaborn之简单绘图--散点图

#多参数运用,区分数据散点类别
ax = sns.scatterplot(x='a', y='b', hue='d', style='style', size='c', data=wide_df)
plt.title('Scatter of All')
plt.grid()
plt.show()

图形如下:
Seaborn之简单绘图--散点图
hue与size参数都是数值类型的,分别都将数值划分为了五个数值范围,在一个范围内就会一个对应的颜色和散点大小,style参数这里的数据是类型数据,散点的形状区分其数据属于哪一种类型。还有很多其他参数可以应用,如有想更多的了解,可以参考:[seaborn0.9中文文档]

上一篇:2021-01-29


下一篇:Python数据可视化—seaborn简介和实例