How do I create space around the points I've plotted with matplotlib?
For example, in this plot, the bottom left point is cutoff by the axis, but I would like a little more space between the point and the axis.

import matplotlib.pyplot as plt
x = [2**i for i in xrange(4,14)]
y = [i**2 for i in x]
plt.loglog(x,y,'ro',basex=2,basey=2)
plt.xlim([0, 2**14]) # <--- this line does nothing
plt.show()
In interactive mode, the xlim line returns (16.0, 16384), the old values instead of the new values I'm trying to set.
Zero can not be plotted on a loglog graph (log(0) = -inf). It is silently failing because it can not use 0 as a limit.
Try plt.xlim([1,2**14]) instead.
If you are looking for a general way to handle this problem and want to automatically adjust the limits of your plot (even without knowing anything of your data), you can also write a snippet inspired by this answer to a similar question.
Note that you will have to tweak the code a little bit and change it so it also do the job for the y axis.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With