2012-07-12 10 views
17

Z pomocą:W matplotlib, jaka jest różnica między set_xlim i set_xbound?

set_xlim: Ustaw limity danych dla xaxis.

set_xbound: Ustaw dolne i górne wartości liczbowe na osi X.

To nie jest bardzo jasne, więc powiedzmy, że mogę wykreślić coś:

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

Teraz albo zrobić:

ax.set_xlim(2, 7) 

czyli

ax.set_xbound(2, 7) 

I nie widzę różnicy. Mogę przeciągnąć wykres, cała linia jest wykreślona między 0 a 9.

+0

[Axes.set_xbound] (http://matplotlib.sourceforge.net/api/axes_api.html#matplotlib.axes.Axes.set_xbound) wykorzystuje [Axes.set_xlim] (http://matplotlib.sourceforge.net/api/axes_api.html#matplotlib.axes.Axes.set_xlim) Spójrz na [kod] (https://github.com/matplotlib/matplotlib/blob/master/lib /matplotlib/axes.py#L2355) – adchilds

Odpowiedz

15

Powiązana puszka zmienia się automatycznie, jeśli później narysujesz coś, co nie jest w oprawie. Natomiast limity są ustalone i nie zmieniają się automatycznie.

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, więc możesz przekroczyć granicę, ale nie limit? :-) Dziękuję. – PhML

Powiązane problemy