tags: [笔记, Matplotlib, set_xlim()]
categories: [笔记, Matplotlib, set_xlim()]


开始之前

  1. xlim() 和 ylim() 在 Matplotlib 中设置轴的限制
  2. set_xlim() 和 set_ylim() 方法来设置轴限制
  3. 使用 axis() 方法在 Matplotlib 中设置轴的限制

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

未限制坐标范围的原始图形

  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3. x=np.linspace(1,10,500)
  4. y=np.sin(2 * np.pi * x)+1
  5. fig = plt.figure(figsize=(8, 6))
  6. plt.plot(x,y)
  7. plt.title("Plot without limiting axes",fontsize=25)
  8. plt.xlabel("x",fontsize=18)
  9. plt.ylabel("1+sinx",fontsize=18)
  10. plt.show()

在 Matplotlib 中设置轴的范围 - 图1
如果不使用 xlim()和 ylim()函数来限制轴的范围,则该图的整个轴范围为 :X 轴范围从 0 到 10,而 Y 轴范围从 0 到 2。

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

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

  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3. x=np.linspace(0,10,500)
  4. y=np.sin(2 * np.pi * x)+1
  5. fig = plt.figure(figsize=(8, 6))
  6. plt.plot(x,y)
  7. plt.title("Setting range of Axes",fontsize=25)
  8. plt.xlabel("x",fontsize=18)
  9. plt.ylabel("1+sinx",fontsize=18)
  10. plt.xlim(4,8)
  11. plt.ylim(-0.5,2.5)
  12. plt.show()

在 Matplotlib 中设置轴的范围 - 图2
这会将 X 轴的范围限制为4-8,而将 Y 轴的范围限制为-0.5-2.5。

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

  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3. x=np.linspace(0,10,500)
  4. y=np.sin(2 * np.pi * x)+1
  5. fig = plt.figure(figsize=(8, 6))
  6. axes = plt.axes()
  7. axes.set_xlim([4, 8])
  8. axes.set_ylim([-0.5, 2.5])
  9. plt.plot(x,y)
  10. plt.title("Setting range of Axes",fontsize=25)
  11. plt.xlabel("x",fontsize=18)
  12. plt.ylabel("1+sinx",fontsize=18)
  13. plt.show()

在 Matplotlib 中设置轴的范围 - 图3

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

我们还可以使用 matplotlib.pyplot.axis() 来设置轴的范围限制。语法如下:
plt.axis([xmin, xmax, ymin, ymax])
该方法避免了需要单独控制 X 轴和 Y 轴范围的麻烦。

  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3. x=np.linspace(0,10,50)
  4. y=np.sin(2 * np.pi * x)+1
  5. fig = plt.figure(figsize=(8, 6))
  6. plt.axis([4, 9, -0.5, 2.5])
  7. plt.plot(x,y)
  8. plt.title("Setting range of Axes",fontsize=25)
  9. plt.xlabel("x",fontsize=18)
  10. plt.ylabel("1+sinx",fontsize=18)
  11. plt.show()

在 Matplotlib 中设置轴的范围 - 图4