如何在 Matplotlib 中设置轴的范围

Suraj Joshi 2023年1月30日 2020年6月9日
  1. xlim()ylim() 在 Matplotlib 中设置轴的限制
  2. set_xlim()set_ylim() 方法来设置轴限制
  3. 使用 axis() 方法在 Matplotlib 中设置轴的限制
如何在 Matplotlib 中设置轴的范围

为了设置 X 轴的范围限制,我们可以使用 xlim()set_xlim() 方法。类似地,为 Y 轴设置范围限制,我们可以使用 ylim()set_ylim() 方法。我们也可以使用 axis() 方法来控制两个轴的范围。

xlim()ylim() 在 Matplotlib 中设置轴的限制

matplotlib.pyplot.xlim()matplotlib.pyplot.ylim() 可用于分别设置或获取 X 轴和 Y 轴的范围限制。如果在这些方法中传递参数,则它们将设置各个轴的极限,如果不传递任何参数,则将获得各个轴的范围。

import numpy as np
import matplotlib.pyplot as plt

x=np.linspace(0,10,500)
y=np.sin(2 * np.pi * x)+1

fig = plt.figure(figsize=(8, 6))
plt.plot(x, y)
plt.title("Setting range of Axes",fontsize=25)
plt.xlabel("x",fontsize=18)
plt.ylabel("1+sinx",fontsize=18)
plt.xlim(4,8)
plt.ylim(-0.5,2.5)
plt.show()

输出:

使用 xlim 和 ylim 设置轴的范围极限

这会将 X 轴的范围从 4 设置为 8,而将 Y 轴的范围从 -0.5 设置为 2.5

import numpy as np
import matplotlib.pyplot as plt

x=np.linspace(1,10,500)
y=np.sin(2 * np.pi * x)+1

fig = plt.figure(figsize=(8, 6))
plt.plot(x, y)
plt.title("Plot without limiting axes",fontsize=25)
plt.xlabel("x",fontsize=18)
plt.ylabel("1+sinx",fontsize=18)
plt.show()

输出:

没有限制轴的图

从输出图中可以看出,如果不使用 xlim()和 ylim()函数,则会得到一个图,该图的整个轴范围为 X 轴,范围从 0 到 10,而 Y 轴的范围从 0 到 2。

set_xlim()set_ylim() 方法来设置轴限制

matplotlib.axes.Axes.set_xlimmatplotlib.axes.Axes.set_ylim 也用于设置在结果图上查看的数字范围的限制。

import numpy as np
import matplotlib.pyplot as plt

x=np.linspace(0,10,500)
y=np.sin(2 * np.pi * x)+1

fig = plt.figure(figsize=(8, 6))
axes = plt.axes()
axes.set_xlim([4, 8])
axes.set_ylim([-0.5, 2.5])
plt.plot(x, y)
plt.title("Setting range of Axes",fontsize=25)
plt.xlabel("x",fontsize=18)
plt.ylabel("1+sinx",fontsize=18)
plt.show()

输出:

使用 set_xlim 和 set_ylim 方法设置轴范围

使用 axis() 方法在 Matplotlib 中设置轴的限制

我们还可以使用 matplotlib.pyplot.axis() 来设置轴的范围限制。语法如下:

plt.axis([xmin, xmax, ymin, ymax])

该方法消除了用于控制 X 轴和 Y 轴的单独功能的需要。

import numpy as np
import matplotlib.pyplot as plt

x=np.linspace(0,10,50)
y=np.sin(2 * np.pi * x)+1

fig = plt.figure(figsize=(8, 6))
plt.axis([4, 9, -0.5, 2.5])
plt.plot(x, y)
plt.title("Setting range of Axes",fontsize=25)
plt.xlabel("x",fontsize=18)
plt.ylabel("1+sinx",fontsize=18)
plt.show()

输出:

使用轴方法设定轴的极限

Author: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

相关文章 - Matplotlib Axes