ConnectionPatch
是 Matplotlib 库中的一个功能,用于在两个图形元素之间创建连接线。这在创建热图(heatmap)并希望突出显示某些数据点之间的关系时特别有用。
ConnectionPatch
允许你在两个轴(axes)对象之间绘制一条线。这对于可视化数据之间的关联或流程特别有帮助。
ConnectionPatch
主要有两种类型:
以下是一个简单的示例,展示如何在两个热图之间使用 ConnectionPatch
创建连接线:
import matplotlib.pyplot as plt
from matplotlib.patches import ConnectionPatch
import numpy as np
# 创建两个热图
fig, (ax1, ax2) = plt.subplots(1, 2)
data1 = np.random.rand(10, 10)
data2 = np.random.rand(10, 10)
im1 = ax1.imshow(data1, cmap='hot')
im2 = ax2.imshow(data2, cmap='hot')
# 在两个热图之间创建连接线
xyA = (5, 5) # 第一个热图的点
xyB = (5, 5) # 第二个热图的点
coordA = ax1.transData.transform(xyA)
coordB = ax2.transData.transform(xyB)
xy = (coordA[0], coordA[1]), (coordB[0], coordB[1])
line = ConnectionPatch(xy, 'w', lw=2, arrowstyle='->', shrinkA=5, shrinkB=5)
ax2.add_artist(line)
plt.show()
zorder
属性调整连接线的层级,确保它显示在其他元素之上。通过上述方法和示例代码,你应该能够在 Matplotlib 的热图之间成功创建连接线。
领取专属 10元无门槛券
手把手带您无忧上云