19
votes

I'm producing a graph in matplotlib and I would like to set the x-axis between 0-10000 but I do not want to change the y axis I want the graph to do that on it's own. Right now both axis are automatically generated.

Here's an example:

import matplotlib.pyplot as plt
plt.plot([1,2,3,4], [1,4,9,16], 'ro')
plt.axis([0, 6, 0, 20]) 

The axis command cannot help me because I would have to set the y value as well. Also for some reason xlim doesn't work it say's it has no argument xlim.

Any suggestions appreciated thanks

1
I use something like this: axis = fig.add_subplot(111, autoscale_on=False,xlim=(1,flen),ylim=(0,1). where flen is a amount that changes, and where the y axis is just from 0-1, but it sounds like you want to do it vise versa. - Jim
thanks very much, will try this! - Sam Creamer

1 Answers

25
votes

This seems to work fine for me:

import matplotlib.pyplot as plt
plt.plot([1,2,3,4], [1,4,9,16], 'ro')
# print plt.xlim()
plt.xlim(0, 10000)
# or 
# plt.xlim(xmin=0, xmax=10000)