Python Y轴和第一个X记号之间的间距
我是新手 我有以下代码:Python Y轴和第一个X记号之间的间距,python,matplotlib,Python,Matplotlib,我是新手 我有以下代码: from pylab import figure, show import numpy fig = figure() ax = fig.add_subplot(111) plot_data=[1.7,1.7,1.7,1.54,1.52] xdata = range(len(plot_data)) labels = ["2009-June","2009-Dec","2010-June","2010-Dec","2011-June"] ax.plot(xdata,
from pylab import figure, show
import numpy
fig = figure()
ax = fig.add_subplot(111)
plot_data=[1.7,1.7,1.7,1.54,1.52]
xdata = range(len(plot_data))
labels = ["2009-June","2009-Dec","2010-June","2010-Dec","2011-June"]
ax.plot(xdata,plot_data,"b-")
ax.set_xticks(range(len(labels)))
ax.set_xticklabels(labels)
ax.set_yticks([1.4,1.6,1.8])
fig.canvas.draw()
show()
运行该代码时,生成的图表将有一个带有第一个刻度标签(2009年6月)和原点的磨合。我怎样才能让图表移动到更易于阅读的位置?我试图将虚拟数据放入,但Matplotlib(正确地)将其视为数据 我建议更改Y轴限制:
ax.set_ylim([1.2, 1.8])
向x轴和y轴添加两个限制以稍微移动记号标签
# grow the y axis down by 0.05
ax.set_ylim(1.35, 1.8)
# expand the x axis by 0.5 at two ends
ax.set_xlim(-0.5, len(labels)-0.5)
结果是
因为记号标签是文本对象,所以可以更改其对齐方式。但是,要访问文本属性,您需要通过
set\u yticklabels
功能。因此,添加一行:
ax.设置标签([1.4,1.6,1.8],va=“bottom”)
在您的set\u yticks
呼叫后。或者,如果直接通过pylab库,而不是通过Axis对象访问函数,则可以在一行中设置:
pylab.yticks([1.4,1.6,1.8],va=“bottom”)
此代码是否完整?要移动x轴记号的零件在哪里?