您可以自定义 seaborn 样式,它会尽量让这件事变得相对容易。
如果您想查看被视为“样式”定义一部分的每个参数,只需调用不带参数的sns.axes_style(),它将返回当前设置。从 0.3.1 开始,对于默认样式(“darkgrid”),如下所示:
{'axes.axisbelow': True,
'axes.edgecolor': 'white',
'axes.facecolor': '#EAEAF2',
'axes.grid': True,
'axes.labelcolor': '.15',
'axes.linewidth': 0,
'font.family': 'Arial',
'grid.color': 'white',
'grid.linestyle': '-',
'image.cmap': 'Greys',
'legend.frameon': False,
'legend.numpoints': 1,
'legend.scatterpoints': 1,
'lines.solid_capstyle': 'round',
'pdf.fonttype': 42,
'text.color': '.15',
'xtick.color': '.15',
'xtick.direction': 'out',
'xtick.major.size': 0,
'xtick.minor.size': 0,
'ytick.color': '.15',
'ytick.direction': 'out',
'ytick.major.size': 0,
'ytick.minor.size': 0}
一个很好的启发式方法是您可能只需要名称中带有"color" 的参数,因此您可以对其进行过滤:
{k: v for k, v in sns.axes_style().items() if "color" in k}
返回
{'axes.edgecolor': 'white',
'axes.facecolor': '#EAEAF2',
'axes.labelcolor': '.15',
'grid.color': 'white',
'text.color': '.15',
'xtick.color': '.15',
'ytick.color': '.15'}
然后您可以将包含这些参数值的自定义字典传递给sns.set_style():
custom_style = {'axes.labelcolor': 'white',
'xtick.color': 'white',
'ytick.color': 'white'}
sns.set_style("darkgrid", rc=custom_style)