Quiero establecer el límite superior del eje y en 'automático', pero quiero mantener el límite inferior del eje y siempre en cero. Intenté 'auto' y 'autorange', pero parece que no funcionan. Gracias de antemano.
Aquí está mi código:
import matplotlib.pyplot as plt
def plot(results_plt,title,filename):
############################
# Plot results
# mirror result table such that each parameter forms an own data array
plt.cla()
#print results_plt
XY_results = []
XY_results = zip( *results_plt)
plt.plot(XY_results[0], XY_results[2], marker = ".")
plt.title('%s' % (title) )
plt.xlabel('Input Voltage [V]')
plt.ylabel('Input Current [mA]')
plt.grid(True)
plt.xlim(3.0, 4.2) #***I want to keep these values fixed"
plt.ylim([0, 80]) #****CHANGE**** I want to change '80' to auto, but still keep 0 as the lower limit
plt.savefig(path+filename+'.png')
python
matplotlib
vietnastee
fuente
fuente
plt.xlim
oplt.ylim
para establecer los límites del eje actual.Solo establezca
xlim
uno de los límites:fuente
xmin
yxmax
han quedado obsoletos a favorleft
yright
en Matplotlib 3.0.Como se mencionó anteriormente y de acuerdo con la documentación de matplotlib, los límites x de un eje dado
ax
se pueden establecer usando elset_xlim
método de lamatplotlib.axes.Axes
clase.Por ejemplo,
Un límite puede dejarse sin cambios (por ejemplo, el límite izquierdo):
Para establecer los límites x del eje actual, el
matplotlib.pyplot
módulo contiene laxlim
función que simplemente envuelvematplotlib.pyplot.gca
ymatplotlib.axes.Axes.set_xlim
.De manera similar, para los límites y, use
matplotlib.axes.Axes.set_ylim
omatplotlib.pyplot.ylim
. Los argumentos de la palabra clave sontop
ybottom
.fuente
Simplemente agregue un punto en @silvio: si usa axis para trazar como
figure, ax1 = plt.subplots(1,2,1)
. ¡Entoncesax1.set_xlim(xmin = 0)
también funciona!fuente