Seaborn强大的调色功能

Seaborn强大的调色功能

使用matplotlib绘图

def sinplot():
    x = np.linspace(0,14,100)
    plt.figure(figsize=(8,6))
    for i in range(4):
        plt.plot(x, np.sin(x+i)*(i+0.75), label='sin(x+%s)*(%s+0.75)'% (i,i))
    plt.legend()
    
sinplot()

Seaborn强大的调色功能_第1张图片

plt.figure(figsize=(8,6))指定了图像大小为8*6

现在整体的风格是matplotlib的风格,整体背景白色,曲线颜色取值是随机的。

Seaborn调色板

获取色板

color_palette方法可以创建一个调色板,在不适用任何参数的时候会返回现在系统使用的调色板:
Seaborn强大的调色功能_第2张图片

其中每个元组有三个元素,代表RGB三原色。

上边的不能直观显示色板颜色,可以调用palplot方法来显示色板的颜色:

Seaborn强大的调色功能_第3张图片

Seaborn提供了’deep’, ‘muted’, ‘pastel’, ‘bright’,‘dark’, ‘colorblind’这么几种颜色样式:
Seaborn强大的调色功能_第4张图片

可以通过这种方法获取到所需的色板,然后应用到图片中。

设置色板

Seaborn强大的调色功能_第5张图片

设置色板之后运行绘图函数,发现绘制图像线条的颜色就都是从色板中抽取的颜色。

恢复色板

和之前一样,只需要指定sns.set()即可恢复默认设定。

使用with进行调色

with语句内部的画图语句将会使用自定义的色板,with之外的语句将使用默认画板:

with sns.color_palette('dark'):
    sinplot()

Seaborn强大的调色功能_第6张图片

自定义色板

系统默认色板有6个颜色,图像会循环取这6个颜色,当线条比较多的时候会造成颜色重复,所以我们可以自定义色板:

pal1 = sns.color_palette([(0.5,0.1,0.7),(0.3,0.1,0.9)])
sns.palplot(pal1)

Seaborn强大的调色功能_第7张图片

这样就自定义了自己的色板,数量大于6个也是没有问题的。

但这种方式不是很方便,因为要自定义RGB的数值,还有更简便的方法:

sns.palplot(sns.color_palette('hls', 8))

Seaborn强大的调色功能_第8张图片

这样,定义了指定长度的色板,然后就可以用这个色板来绘图了:
Seaborn强大的调色功能_第9张图片

你可能感兴趣的:(数据科学)