2012-05-31 6 views
14

ho qualche codice:Come impostare "step" sull'asse X nella mia figura in matplotlib python 2.6.6?

#!/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() 

e mi dà quella cifra: my figure

Come si può vedere, il "passo" sull'asse X è di 0,5, ma vorrei impostarlo su 1. Come farlo?

Quando uso plt.xticks(1) mi dà errori:

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()

io uso Python 2.6.6 su Ubuntu 10.10 ....

risposta

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

xticks documentation.

Five x-ticks.

+1

Wow , grazie, funziona perfettamente :) Non so come potrei perdere questo;) Grazie agai n! – mazix

+0

@mazix: se questa risposta ha risolto il tuo problema, dovresti sentirti libero di accettarlo (http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work) – mgilson

+0

@mgilson: thanku Hai così tanto, ho appena accettato la risposta di Steve :) – mazix

Problemi correlati