在 matplotlib 中隐藏轴线和标签,除了最小/最大 y 标签

Mic*_*hal 4 python matplotlib

我在 Python matplotlib 中有绘图:

from matplotlib import pyplot as plt

data = [1, 5, 2, 1, 1, 4, 3, 1, 7, 8, 9, 6, 1]
plt.plot(data)
Run Code Online (Sandbox Code Playgroud)

除了最小和最大 y 轴标签外,有没有办法隐藏轴线和标签?我知道plt.axis("off"),但是我想在 y 轴上显示第一个和最后一个标签。

当前图位于下图左侧,所需图位于右侧。

在此处输入图片说明

Tom*_*Tom 5

在这里,您可以格式化边框和刻度以隐藏它们,然后显式设置 y 刻度:

from matplotlib import pyplot as plt

data = [1, 5, 2, 1, 1, 4, 3, 1, 7, 8, 9, 6, 1]

fig, ax = plt.subplots()
ax.plot(data)
for side in ['top','right','bottom','left']:
    ax.spines[side].set_visible(False)
ax.tick_params(axis='both',which='both',labelbottom=False,bottom=False,left=False)
ax.set_yticks([min(y),max(y)]) 
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明