在Matplotlib中,是否存在一种方法可以像Origin默认情况下那样,在标签和轴之间设置刻度?在线示例部分没有展示这个功能的单个绘图。我喜欢将刻度放在绘图区域外面,因为有时候绘图隐藏了内部的刻度。
在Matplotlib中,是否存在一种方法可以像Origin默认情况下那样,在标签和轴之间设置刻度?在线示例部分没有展示这个功能的单个绘图。我喜欢将刻度放在绘图区域外面,因为有时候绘图隐藏了内部的刻度。
仅设置主要刻度:
ax = plt.gca()
ax.get_yaxis().set_tick_params(direction='out')
ax.get_xaxis().set_tick_params(direction='out')
plt.draw()
设置所有刻度线(次要和主要)
ax.get_yaxis().set_tick_params(which='both', direction='out')
ax.get_xaxis().set_tick_params(which='both', direction='out')
plt.draw()
同时设置 x 和 y 轴:
ax = plt.gca()
ax.tick_params(direction='out')
要相对于刻度移动刻度标签,请使用pad
。比较
ax.tick_params(direction='out', pad=5)
plt.draw()
随着
ax.tick_params(direction='out', pad=15)
plt.draw()
tick_param
的文档(http://matplotlib.org/api/axes_api.html#matplotlib.axes.Axes.tick_params)。它可以设置刻度和标签之间的间距。 - tacaswellax = plt.subplot(111)
yax = ax.get_yaxis()
plt.xticks(y_pos, city)
xtickNames=ax.set_xticklabels(city)
plt.setp(xtickNames, rotation=45, fontsize=10)