I have a barchart code snippet as below..When you run this,you get 4 bars ,the first of which lies against the y axis.Is it possible to put some gap between y axis and the first bar?
def plot_graph1():
xvals = range(4)
xnames=["one","two","three","four"]
yvals = [10,30,40,20]
width = 0.25
yinterval = 10
figure = plt.figure()
plt.grid(True)
plt.xlabel('x vals')
plt.ylabel('y vals')
plt.bar(xvals, yvals, width=width)
plt.xticks([ x+(width/2) for x in xvals],[x for x in xnames])
plt.yticks(range(0,max(yvals),yinterval))
figure.savefig("barchart.png",format="png")
plt.show()
if __name__=='__main__':
plot_graph1()
The output is as below

It’s easiest to use
plt.marginsandplt.ylim(ymin=0).marginswill act likeaxis('tight'), but leave the specified percentage of "padding", instead of scaling to the exact limits of the data.Also,
plt.barhas analign="center"option that simplifies your example somewhat.Here’s a slightly simplified version of your example above: