第二章:seaborn调色板

Posted zhaco

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第二章:seaborn调色板相关的知识,希望对你有一定的参考价值。

1、系统默认调色板

 1 import seaborn as sns
 2 import matplotlib.pyplot as plt
 3 
 4 # 设置画布的大小
 5 sns.set(context="notebook", # 缩放绘图元素
 6         style="darkgrid",   # 灰色网格
 7         palette="deep",     # 可取值为deep, muted, bright, pastel, dark, colorblind
 8         font="sans-serif",  # 字体
 9         font_scale=1,       # 缩放字体的大小
10         color_codes=True,
11         rc={"figure.figsize":(6,6)})
12 
13 # 调用系统调色板
14 color_p = sns.color_palette(palette=None,   # 调色板
15                             n_colors=None,  # 调色板中的颜色数,默认为6
16                             desat=None)     # 每种颜色去饱和的比例。
17 
18 # 将颜色调色板中的color_p作为水平数组绘制出调色板
19 sns.palplot(color_p,        # 绘制系统调色板
20             size=1)         # 绘图大小的比例因子
21 
22 plt.show()

技术图片

  2、自定义调色板

 1 import seaborn as sns
 2 import matplotlib.pyplot as plt
 3 
 4 # 设置画布的大小
 5 sns.set(context="notebook", # 缩放绘图元素
 6         style="darkgrid",   # 灰色网格
 7         palette="deep",     # 可取值为deep, muted, bright, pastel, dark, colorblind
 8         font="sans-serif",  # 字体
 9         font_scale=1,       # 缩放字体的大小
10         color_codes=True,
11         rc={"figure.figsize":(6,6)})    # 设置画布大小
12 
13 # 调用系统调色板
14 color_p = sns.color_palette(palette="hls",  # 自定义调色板
15                             n_colors=12,    # 调色板中的颜色数为12
16                             desat=None)     # 每种颜色去饱和的比例。
17 
18 # 将颜色调色板中的color_p作为水平数组绘制出调色板
19 sns.palplot(color_p,        # 绘制系统调色板
20             size=1)         # 绘图大小的比例因子
21 
22 plt.show()

技术图片

 3、连续调色板

color_p = sns.color_palette(palette="Blues")时:

技术图片

 color_p = sns.color_palette(palette="Blues_r")时:

 技术图片

 4、发散调色板

 当color_p = sns.color_palette(palette="BrBG",n_colors=7)

技术图片

 5、线性调色板 

1 import seaborn as sns
2 import matplotlib.pyplot as plt
3 sns.palplot(sns.color_palette("cubehelix",8))
4 plt.show()

技术图片

 6、变换色板

 

1 import seaborn as sns
2 import matplotlib.pyplot as plt
3 
4 # 八个色彩,start螺旋开始的色相,rot螺旋终止的色相
5 sns.palplot(sns.cubehelix_palette(n_colors=8,start=0.75,rot=-0.15))
6 plt.show()

 

技术图片

7、xkcd_palette调用xkcd_rgb当中的颜色

 1 import seaborn as sns
 2 import matplotlib.pyplot as plt
 3 
 4 # 颜色可以从sns.xkcd_rgb查看
 5 color_arr = [windows blue,amber,greyish,faded green,dusty purple]
 6 
 7 # xkcd_palette调色板调用color_arr内的颜色
 8 xkcd_arr = sns.xkcd_palette(colors=color_arr)
 9 
10 # 将颜色调色板当中的值xkcd_arr作为水平数组绘制出调色板
11 sns.palplot(xkcd_arr)
12 plt.show()

技术图片

 

 8、颜色对儿

color_p = sns.color_palette(palette="Paired",n_colors=8)时:

技术图片

9、渐变调色板

 

 1 import numpy
 2 import seaborn as sns
 3 import matplotlib.pyplot as plt
 4 
 5 # 从多元正态分布当中抽取随机样本(参数:均值,方差;300个随机正太分布样本) T表示转置
 6 x,y = numpy.random.multivariate_normal([0,0],[[1,-5],[-5,1]],size=300).T
 7 
 8 # 深色调色板, as_cmap参数用来更改显示的颜色范围是离散的还是连续的,True为连续,FALSE为离散
 9 pal = sns.dark_palette(color="green",as_cmap=True)
10 
11 # 绘制核密度估计图(等高线图)
12 sns.kdeplot(x,y,cmap=pal)
13 plt.show()

 

技术图片

 

 10、导入调色板

 1 import seaborn as sns
 2 import numpy
 3 import matplotlib.pyplot as plt
 4 # 设置画布的大小
 5 sns.set(context="notebook", # 缩放绘图元素
 6         style="darkgrid",   # 灰色网格
 7         palette="deep",     # 可取值为deep, muted, bright, pastel, dark, colorblind
 8         font="sans-serif",  # 字体
 9         font_scale=1,       # 缩放字体的大小
10         color_codes=True,
11         rc={"figure.figsize":(6,6)})    # 设置画布大小
12 
13 # 创建数据组,normal是从正态分布当中抽取20*8的矩阵
14 arr = numpy.random.normal(size=(20,8))+ numpy.arange(0,8,8)/2
15 
16 # 绘制箱线图,并导入调色板
17 sns.boxplot(data=arr,palette=sns.color_palette("hls",8))
18 
19 plt.show()

技术图片

 11、亮度和饱和度

 1 import seaborn as sns
 2 import numpy
 3 import matplotlib.pyplot as plt
 4 # 设置画布的大小
 5 sns.set(context="notebook", # 缩放绘图元素
 6         style="darkgrid",   # 灰色网格
 7         palette="deep",     # 可取值为deep, muted, bright, pastel, dark, colorblind
 8         font="sans-serif",  # 字体
 9         font_scale=1,       # 缩放字体的大小
10         color_codes=True,
11         rc={"figure.figsize":(6,6)})    # 设置画布大小
12 
13 # 创建数据组,normal是从正态分布当中抽取20*8的矩阵
14 arr = numpy.random.normal(size=(20,8))+ numpy.arange(0,8,8)/2
15 
16 # 绘制箱线图,并导入调色板,l=0.3,s=0.8分别为亮度和饱和度
17 sns.boxplot(data=arr,palette=sns.hls_palette(n_colors=8,l=0.3,s=0.8))
18 
19 plt.show()

技术图片

 12、颜色对儿

 1 import seaborn as sns
 2 import numpy
 3 import matplotlib.pyplot as plt
 4 # 设置画布的大小
 5 sns.set(context="notebook", # 缩放绘图元素
 6         style="darkgrid",   # 灰色网格
 7         palette="deep",     # 可取值为deep, muted, bright, pastel, dark, colorblind
 8         font="sans-serif",  # 字体
 9         font_scale=1,       # 缩放字体的大小
10         color_codes=True,
11         rc={"figure.figsize":(6,6)})    # 设置画布大小
12 
13 # 创建数据组,normal是从正态分布当中抽取20*8的矩阵
14 arr = numpy.random.normal(size=(20,8))+ numpy.arange(0,8,8)/2
15 
16 # 绘制箱线图,并导入调色板,Paired为颜色对儿(颜色相近为一对儿)
17 sns.boxplot(data=arr,palette=sns.color_palette(palette="Paired",n_colors=8))
18 
19 plt.show()

技术图片

 

以上是关于第二章:seaborn调色板的主要内容,如果未能解决你的问题,请参考以下文章

Seaborn 调色板不适用于线图

seaborn的调色板刻度边框标签数据集等的一些解释

seaborn的调色板刻度边框标签数据集等的一些解释

Seaborn 调色板 - 防止颜色回收

Seaborn的调色板(palette)

python Seaborn - 设置自定义调色板