ax.axvline与ax.vlines在效果和使用上有什么区别
时间: 2023-12-10 08:05:34 浏览: 233
`ax.axvline`和`ax.vlines`都可以用来绘制竖线,但是它们在使用和效果上有些区别。
- `ax.axvline`绘制一条垂直于x轴的线,可以指定线的位置(x轴上的值)、线的颜色、线的宽度等参数,但不能指定线的长度。
- `ax.vlines`也是绘制一条竖线,但可以指定线的起始点和终止点,从而控制线的长度。此外,它还可以接受一个数组或列表作为参数,从而可以同时绘制多条竖线。
下面是一个使用`ax.axvline`绘制竖线的示例代码:
``` python
import matplotlib.pyplot as plt
import numpy as np
# 绘制正弦曲线
x = np.linspace(0, 10, 100)
y = np.sin(x)
fig, ax = plt.subplots()
ax.plot(x, y)
# 绘制一条竖线
ax.axvline(x=5, color='r', linestyle='--', linewidth=2)
plt.show()
```
下面是使用`ax.vlines`绘制竖线的示例代码:
``` python
import matplotlib.pyplot as plt
import numpy as np
# 绘制正弦曲线
x = np.linspace(0, 10, 100)
y = np.sin(x)
fig, ax = plt.subplots()
ax.plot(x, y)
# 绘制一条竖线
ax.vlines(x=5, ymin=0, ymax=1, color='r', linestyle='--', linewidth=2)
plt.show()
```
可以看到,两种方法都可以绘制一条竖线,但是`ax.vlines`可以指定线的长度。如果只需要绘制一条竖线,`ax.axvline`更加简洁。
阅读全文