隐藏y轴上的刻度值为负值

时间:2017-02-09 21:02:27

标签: matplotlib yaxis

我试图隐藏y轴上小于0的任何值。我看到要隐藏y轴上的标签我必须使用这样的东西:

make_invisible = True
ax4.set_yticks(minor_ticks)

if (make_invisible):
    yticks=ax4.yaxis.get_major_ticks()      
    yticks[0].label1.set_visible(False)

我如何调整这个,以便如果ytick标签是负数,它将被隐藏?

1 个答案:

答案 0 :(得分:2)

您可以使用set_xticks()方法在x轴上简单设置所需的刻度。

import matplotlib.pyplot as plt
plt.figure(figsize=(7,3))
plt.plot([-2,-1,0,1,2],[4,6,2,7,1])

ticks = [tick for tick in plt.gca().get_xticks() if tick >=0]
plt.gca().set_xticks(ticks)
plt.show()

enter image description here

x替换每个y将为您提供y轴上的相应行为。