注意
转到末尾 下载完整的示例代码。
无限线#
axvline
和 axhline
在给定的 *x*/*y* 位置绘制无限垂直/水平线。它们通常用于标记特殊数据值,例如,在本例中,用于标记 sigmoid 函数的中心值和极限值。
axline
以任意方向绘制无限直线。
import matplotlib.pyplot as plt
import numpy as np
t = np.linspace(-10, 10, 100)
sig = 1 / (1 + np.exp(-t))
plt.axhline(y=0, color="black", linestyle="--")
plt.axhline(y=0.5, color="black", linestyle=":")
plt.axhline(y=1.0, color="black", linestyle="--")
plt.axvline(color="grey")
plt.axline((0, 0.5), slope=0.25, color="black", linestyle=(0, (5, 5)))
plt.plot(t, sig, linewidth=2, label=r"$\sigma(t) = \frac{1}{1 + e^{-t}}$")
plt.xlim(-10, 10)
plt.xlabel("t")
plt.legend(fontsize=14)
plt.show()
axline
也可以与 transform
参数一起使用,该参数应用于点,但不应用于斜率。这对于绘制具有固定斜率的对角网格线很有用,这些网格线在移动绘图极限时会保持在原位。
for pos in np.linspace(-2, 1, 10):
plt.axline((pos, 0), slope=0.5, color='k', transform=plt.gca().transAxes)
plt.ylim([0, 1])
plt.xlim([0, 1])
plt.show()
参考
本示例演示了以下函数、方法、类和模块的使用