How to set "step" on axis X in my figure in matplotlib python 2.6.6?


Question

I have some code:

#!/usr/bin/env python

import matplotlib
matplotlib.use("Agg")       
import matplotlib.pyplot as plt

x = [1,2,3,4,5]
y = [1.2,1.9,3.1,4.2,4.8]

plt.plot(x,y)
plt.xlabel('OX')
plt.ylabel('OY')
plt.savefig('figure1.png')
plt.close()

And it gives me that figure: my figure

as You can see, the "step" on axis X is 0.5 but I would like to set it to 1. How to make it?

When I use plt.xticks(1) it gives me errors:

Traceback (most recent call last): File "overflow.py", line 13, in plt.xticks(1) File "/usr/lib/pymodules/python2.6/matplotlib/pyplot.py", line 998, in xticks locs = ax.set_xticks(args[0]) File "/usr/lib/pymodules/python2.6/matplotlib/axes.py", line 2064, in set_xticks return self.xaxis.set_ticks(ticks, minor=minor) File "/usr/lib/pymodules/python2.6/matplotlib/axis.py", line 1150, in set_ticks if len(ticks) > 1: TypeError: object of type 'int' has no len()

I use Python 2.6.6 on Ubuntu 10.10 ....

1
18
5/31/2012 7:05:46 PM

Accepted Answer

plt.xticks([1, 2, 3, 4, 5])

xticks documentation.

Five x-ticks.

29
5/31/2012 7:10:26 PM

Licensed under: CC-BY-SA with attribution
Not affiliated with: Stack Overflow
Icon