使用seaborn白色风格没有显示主要刻度线并且无法恢复

Yma*_*eth 9 python matplotlib python-3.x seaborn

当我使用seaborn“白色”样式生成绘图时,我看到主要刻度标签,但没有看到任何主要刻度线

使用...将主要刻度线设置得更大

%matplotlib inline

import seaborn as sns
import matplotlib.pyplot as plt

sns.set_style('white', {'axes.linewidth': 0.5})
plt.rcParams['xtick.major.size'] = 20
plt.rcParams['xtick.major.width'] = 4

fig, ax = plt.subplots()
plt.show()
Run Code Online (Sandbox Code Playgroud)

...没有效果。

我找不到任何可以使刻度线可见/不可见的选项。

有人有任何线索吗?

Imp*_*est 6

rcParams'xtick.major.size''xtick.major.width'确实可以用于更改刻度的长度和宽度。rcParams'xtick.bottom''ytick.left'可用于设置刻度线的打开或关闭。

import seaborn as sns
import matplotlib.pyplot as plt

sns.set_style('white', {'axes.linewidth': 0.5})
plt.rcParams['xtick.major.size'] = 20
plt.rcParams['xtick.major.width'] = 4
plt.rcParams['xtick.bottom'] = True
plt.rcParams['ytick.left'] = True

fig, ax = plt.subplots()
plt.show()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述


tdy*_*tdy 5

使用'ticks'样式

这是一个内置样式,其确切目的是具有'white'带有刻度线的样式:

sns.set_style('ticks')  # white style with tick marks
Run Code Online (Sandbox Code Playgroud)


如果您确实想使用'white'样式或只是想修改刻度参数,最简单的方法是传递一个rc字典:

sns.set_style('white', rc={
    'xtick.bottom': True,
    'ytick.left': True,
})
Run Code Online (Sandbox Code Playgroud)