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()
123456789 | 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() |
---|
plt.figure(figsize=(8,6))指定了图像大小为8*6
现在整体的风格是matplotlib的风格,整体背景白色,曲线颜色取值是随机的。
color_palette
方法可以创建一个调色板,在不适用任何参数的时候会返回现在系统使用的调色板:
其中每个元组有三个元素,代表RGB三原色。
上边的不能直观显示色板颜色,可以调用palplot方法来显示色板的颜色:
Seaborn提供了’deep’
, ‘muted’
, ‘pastel’
, ‘bright’
,‘dark’
, ‘colorblind’
这么几种颜色样式:
可以通过这种方法获取到所需的色板,然后应用到图片中。
设置色板之后运行绘图函数,发现绘制图像线条的颜色就都是从色板中抽取的颜色。
和之前一样,只需要指定sns.set()即可恢复默认设定。
with语句内部的画图语句将会使用自定义的色板,with之外的语句将使用默认画板:
with sns.color_palette('dark'): sinplot()
123 | with sns.color_palette('dark'): sinplot() |
---|
系统默认色板有6个颜色,图像会循环取这6个颜色,当线条比较多的时候会造成颜色重复,所以我们可以自定义色板:
pal1 = sns.color_palette([(0.5,0.1,0.7),(0.3,0.1,0.9)]) sns.palplot(pal1)
123 | pal1 = sns.color_palette([(0.5,0.1,0.7),(0.3,0.1,0.9)])sns.palplot(pal1) |
---|
这样就自定义了自己的色板,数量大于6个也是没有问题的。
但这种方式不是很方便,因为要自定义RGB的数值,还有更简便的方法:
sns.palplot(sns.color_palette('hls', 8))
12 | sns.palplot(sns.color_palette('hls', 8)) |
---|
这样,定义了指定长度的色板,然后就可以用这个色板来绘图了: