Change y range to start from 0 with matplotlib

The range must be set after the plot.

import matplotlib.pyplot as plt
f, ax = plt.subplots(1)
xdata = [1, 4, 8]
ydata = [10, 20, 30]
ax.plot(xdata, ydata)
ax.set_ylim(ymin=0)
plt.show(f)

If ymin is changed before plotting, this will result in a range of [0, 1].

Edit: the ymin argument has been replaced by bottom:

ax.set_ylim(bottom=0)

Documentation: https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.set_ylim.html

You can do the same on the x axis with left and right:

ax.set_xlim(left=0)

Documentation: https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.set_xlim.html

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)