2012-07-12 17 views
17

De la ayuda:En matplotlib, ¿cuál es la diferencia entre set_xlim y set_xbound?

set_xlim: Establecer los límites de datos para el eje x.

set_xbound: Establezca los límites numéricos inferiores y superiores del eje x.

Eso no es muy clara, por lo que vamos a decir que me trazo algo:

import matplotlib.pylab as plt 
fig, ax = plt.subplots(1, 1) 
ax.plot(xrange(10), xrange(10)) 

Ahora, ya sea que hago:

ax.set_xlim(2, 7) 

o:

ax.set_xbound(2, 7) 

I no veo la diferencia Puedo arrastrar la trama, toda la línea está trazada entre 0 y 9.

+0

[Axes.set_xbound] (http://matplotlib.sourceforge.net/api/axes_api.html#matplotlib.axes.Axes.set_xbound) utiliza [Axes.set_xlim] (http://matplotlib.sourceforge.net/api/axes_api.html#matplotlib.axes.Axes.set_xlim) Eche un vistazo al [código] (https://github.com/matplotlib/matplotlib/blob/master/lib /matplotlib/axes.py#L2355) – adchilds

Respuesta

15

El límite puede cambiar automáticamente, si luego trazas algo que no está dentro del límite. Por el contrario, los límites son fijos y no cambian automáticamente.

import pylab as p 

t = p.arange(0.0, 2.0, 0.01) 
s = p.sin(2*p.pi*t) 

ax=p.subplot(111) 
ax.plot(t, s, color='r',linewidth=1.0) 
ax.set_ylim(-1,1) 
ax.plot(t, s+1, color='g',linewidth=1.0, label="Graph2") 
p.show() 


ax=p.subplot(111) 
ax.plot(t, s, color='r',linewidth=1.0) 
ax.set_ybound(-1,1) 
ax.plot(t, s+1, color='g',linewidth=1.0, label="Graph2") 
p.show() 

enter image description here enter image description here

+0

Ok, ¿así que puedes superar un límite pero no un límite? :-) Gracias. – PhML

Cuestiones relacionadas