勾选显示外轴限制的标签

时间:2014-08-26 02:09:12

标签: matplotlib

如果它们突出轴本身,有没有办法自动不显示刻度线标签?例如,请考虑以下代码

#!/usr/bin/python
import pylab as P, numpy as N, math as M
xvals=N.arange(-10,10,0.1)
yvals=[ M.sin(x) for x in xvals ]
P.plot( xvals, yvals )
P.show()

看看x轴上的-10和10标签如何向图的左侧和右侧戳?并且类似于y轴上的-1.0和1.0标签。我可以自动抑制绘制这些但保留那些不超出绘图限制的那些吗?

1 个答案:

答案 0 :(得分:0)

我认为您可以自己格式化轴刻度,然后修剪它们 那是悬在一边。处理轴设置的推荐方法是 使用ticker API。例如,

from matplotlib.ticker import MaxNLocator
import matplotlib.pyplot as plt
import numpy as np

fig = plt.figure()
ax = fig.add_subplot(111)

xvals=np.arange(-10,10,0.1)
yvals=[ np.sin(x) for x in xvals ]
ax.plot( xvals, yvals )

ax.xaxis.set_major_locator(MaxNLocator(prune='both'))
plt.show()

这里我们创建一个图形和轴,绘制数据,然后设置x轴 主要的蜱虫。格式化程序MaxNLocator被赋予 论文here中描述的参数prune='both'

这不是你要求的,但也许它会解决你的问题。