如何在subplot中添加colorbar
参考:how to add colorbar to subplot matplotlib
在使用matplotlib库进行数据可视化时,我们经常会用到subplot,即在一个图形窗口中显示多个子图。如果我们需要给每个子图添加colorbar,可以通过matplotlib的colorbar功能来实现。在本文中,我将详细介绍如何在subplot中添加colorbar,并提供相关示例代码。
1. 单个subplot添加colorbar
首先,我们来看一个简单的例子,如何在一个subplot中添加colorbar。
import matplotlib.pyplot as plt
import numpy as np
# 生成随机数据
data = np.random.rand(10, 10)
# 创建subplot
fig, ax = plt.subplots()
im = ax.imshow(data)
# 添加colorbar
cbar = fig.colorbar(im)
plt.show()
Output:
在这个示例中,我们首先生成了一个10×10的随机数据矩阵,然后在一个subplot中显示这个矩阵,并添加了colorbar。
2. 多个subplot添加colorbar
接下来,我们看一个更复杂的例子,如何在多个subplot中添加colorbar。
import matplotlib.pyplot as plt
import numpy as np
# 生成随机数据
data1 = np.random.rand(10, 10)
data2 = np.random.rand(10, 10)
# 创建subplot
fig, axs = plt.subplots(1, 2)
im1 = axs[0].imshow(data1)
im2 = axs[1].imshow(data2)
# 添加colorbar
cbar1 = fig.colorbar(im1, ax=axs[0])
cbar2 = fig.colorbar(im2, ax=axs[1])
plt.show()
Output:
在这个示例中,我们生成了两个10×10的随机数据矩阵,然后在两个subplot中分别显示这两个矩阵,并分别添加了colorbar。
3. 自定义colorbar
有时候我们需要对colorbar进行一些自定义,比如设置标签、范围等。
import matplotlib.pyplot as plt
import numpy as np
# 生成随机数据
data = np.random.rand(10, 10)
# 创建subplot
fig, ax = plt.subplots()
im = ax.imshow(data)
# 添加colorbar并设置标签和范围
cbar = fig.colorbar(im)
cbar.set_label('colorbar label')
cbar.set_clim(0, 1)
plt.show()
在这个示例中,我们在添加colorbar的同时设置了colorbar的标签为’colorbar label’,并将colorbar的范围设置为0到1。
通过以上几个示例,我们学会了如何在subplot中添加colorbar,并对colorbar进行一些自定义。