plt.subplots(),imshow画图时,我想添加额外的轴在imshow里
时间: 2023-10-29 15:13:55 浏览: 46
可以使用 matplotlib 的 `Axes` 对象来实现在 `imshow` 里添加额外的轴。首先,你需要创建一个 `Axes` 对象,并将其添加到 `imshow` 的返回值中。然后,在 `Axes` 对象上,你可以使用 matplotlib 提供的各种方法来添加额外的轴(例如,使用 `axhline` 和 `axvline` 方法添加水平和垂直线)。
以下是一个简单的示例,展示如何在 `imshow` 中添加额外的轴:
``` python
import numpy as np
import matplotlib.pyplot as plt
# 生成一张图片
img = np.random.rand(10, 10)
# 创建一个包含两个 Axes 对象的 figure
fig, (ax1, ax2) = plt.subplots(ncols=2)
# 在第一个 Axes 对象中显示图片
im = ax1.imshow(img)
# 在第二个 Axes 对象中添加一个水平线和一个垂直线
ax2.axhline(y=5, color='r')
ax2.axvline(x=5, color='r')
# 将第一个 Axes 对象的 colorbar 移动到第二个 Axes 对象的位置
cbar = fig.colorbar(im, ax=ax2)
plt.show()
```
运行代码后,你应该会看到一张包含两个子图的图片:左边的子图是一个 `imshow` 显示的图片,右边的子图添加了一条水平线和一条垂直线。此外,右边的子图还包含一个 colorbar,它实际上属于左边的子图,但被移动到了右边的子图的位置上。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)