【seaborn】sns.set() 绘图风格设置

目录

seaborn.set(context='notebook',
            style='darkgrid',
            palette='deep',
            font='sans-serif',
            font_scale=1,
            color_codes=True,
            rc=None)

从这个set()函数,可以看出,通过它我们可以设置背景色、风格、字型、字体等。

我们定义一个函数,这个函数主要是生成100个0到15的变量,然后用这个变量画出6条曲线。

def sinplot():
    x = np.linspace(0, 15, 100)
    for i in range(1, 6):
        plt.plot(x, np.sin(x + i * .5) * (7 - i))
sns.set()
sinplot()

【seaborn】sns.set() 绘图风格设置

那么,问题来了,有人会说,这个set()函数这么多参数,只要改变其中任意一个参数的值,绘图效果就会发生变化,那我们怎么知道哪种搭配是最佳效果呢,难道我们要一个个去测试吗?
当然不是,seaborn提供了5种默认的风格,我们在实际绘图中只要选择一种喜欢的风格就可以了,下面我们就看看这5种风格的用法及效果。

  1. 参数 style 指定的5种默认风格

函数参数:seaborn.set_style(style=None, rc=None),这里style可选参数值有:darkgrid,whitegrid,dark,white,ticks,下面我们就通过设置不同的风格,看看每种风格的效果。

1) sns.set(style=’white’)

sns.set(style='white')

【seaborn】sns.set() 绘图风格设置

2) sns.set(style=’whitegrid’)

sns.set(style='whitegrid')

【seaborn】sns.set() 绘图风格设置

3) sns.set(style=’darkgrid’)

sns.set(style='darkgrid')

【seaborn】sns.set() 绘图风格设置

4) sns.set(style=’dark’)

sns.set(style='dark')

【seaborn】sns.set() 绘图风格设置

5) sns.set(style=’ticks’)

sns.set(style='ticks')

【seaborn】sns.set() 绘图风格设置
  1. sns.despine() 函数,移除图像的上部和右侧的坐标轴

这个函数可以移除图像的上部和右侧的坐标轴,我们看看效果。

x = np.linspace(0, 15, 100)
y = np.sin(x +1) * 5

sns.set(style='ticks')
plt.plot(x, y)
sns.despine()

【seaborn】sns.set() 绘图风格设置
这里默认移除了上部和右侧的轴,当然我们也可以移除其他轴,只要将表示四个边的参数值改为true即可,下面是个这个函数的参数
seaborn.despine(fig=None, ax=None, top=True, right=True, left=False, bottom=False, offset=None, trim=False)
其中offset表示偏离左侧轴的距离。
x = np.linspace(0, 15, 100)
y = np.sin(x +1) * 5

sns.set(style='ticks')
plt.plot(x, y)
sns.despine(top=True, right=True, left=False, bottom=False,offset=50)

【seaborn】sns.set() 绘图风格设置
  1. 使用with打开某种风格

在matplotlib中我们已经学过了,在一个figure对象中,我们可以添加多个子图,那么如果不同的子图使用不同的风格,我们该如何做呢?
很简单,使用with 打开某种风格,然后在with下画的图都使用with打开的分格,我们来看看代码。

x = np.linspace(0, 15, 100)
y1 = np.sin(x + 1) * 1
y2 = np.sin(x + 3) * 3
y3 = np.sin(x + 5) * 5

fig = plt.figure()

with sns.axes_style("ticks"):
    ax1 = fig.add_subplot(221)
    plt.plot(x, y1)
    ax1 = fig.add_subplot(222)
    plt.plot(x, y2)

fig.add_subplot(223)
plt.plot(x, y3)

【seaborn】sns.set() 绘图风格设置
  1. 参数 context 指定的4种默认风格

seaborn.set() 的 context 这个参数是用来设置 绘图背景参数的,它主要来影响标签、线条和其他元素的效果,但不会影响整体的风格,跟style有点区别。

当然,也可以使用函数 seaborn.set_context(context=None, font_scale=1, rc=None) 指定,效果一样

context 的可选值有: notebook(默认),paper, talk, poster

x = np.linspace(0, 15, 100)
y = np.sin(x + 1) * 1

fig = plt.figure()

fig.add_subplot(221)
sns.set(context='paper', style='ticks')
plt.plot(x, y)

fig.add_subplot(222)
sns.set(context='notebook', style='ticks')
plt.plot(x, y)

fig.add_subplot(223)
sns.set(context='talk', style='ticks')
plt.plot(x, y)

fig.add_subplot(224)
sns.set(context='poster', style='ticks')
plt.plot(x, y)

【seaborn】sns.set() 绘图风格设置

使用函数 seaborn.set_context(context=None, font_scale=1, rc=None)

x = np.linspace(0, 15, 100)
y = np.sin(x +1) * 5

sns.set_context("notebook", font_scale=1.5, rc={"lines.linewidth": 2.5})
plt.figure(figsize=(6, 4))
plt.plot(x, y)

【seaborn】sns.set() 绘图风格设置

reference:

Original: https://blog.csdn.net/weixin_37804469/article/details/125704480
Author: Enzo 想砸电脑
Title: 【seaborn】sns.set() 绘图风格设置

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/715440/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球