在Seaborn中设置绘图背景颜色

时间:2014-08-11 08:04:25

标签: python matplotlib plot pandas seaborn

我正在使用Seaborn在Pandas中绘制一些数据。

我正在制作一些非常大的图(factorplot s)。

要看到它们,我正在我的大学使用一些可视化设施。 我正在使用一个由4×4显示器组成的复合屏幕,小屏幕(但非零)斜面 - 屏幕之间的间隙。 这个差距是黑色的。 为了最大限度地减少屏幕之间的断开,我希望图形背景为黑色。 我一直在挖掘文档和玩游戏,我无法解决它.. 当然这很简单。

我可以使用set_style('darkgrid')

获得灰色背景

我需要直接访问matplotlib中的情节吗?

3 个答案:

答案 0 :(得分:19)

seaborn.set接受rc参数,该参数接受有效matplotlib rcparams的字典。所以我们需要设置两件事:axes.facecolor,它是绘制数据的区域的颜色,figure.facecolor,它是axes之外的一部分。 1}}对象。

(根据@mwaskom的建议编辑)

所以,如果你这样做:

%matplotlib inline
import matplotlib.pyplot as plt
import seaborn
seaborn.set(rc={'axes.facecolor':'cornflowerblue', 'figure.facecolor':'cornflowerblue'})

fig, ax = plt.subplots()

你得到:

enter image description here

这也适用于您的FacetGrid

答案 1 :(得分:8)

我对seaborn不熟悉,但以下内容似乎让你改变 通过设置轴背景来设置背景。它可以设置ax.set_*中的任何一个 元件。

import seaborn as sns
import pandas as pd 
import numpy as np
import matplotlib.pyplot as plt

m=pd.DataFrame({'x':['1','1','2','2','13','13'],
                'y':np.random.randn(6)})

facet = sns.factorplot('x','y',data=m)

facet.set(axis_bgcolor='k')

plt.show()

答案 2 :(得分:0)

在seaborn的新版本中,您也可以使用 axes_style()set_style()可以将绘图样式快速设置为以下预定义样式之一: darkgrid,whitegrid,dark,white,ticks