如何在绘图中使用自定义 png 图像标记(Matplotlib)?

matplotlibpythondata visualization更新于 2025/6/6 15:08:17

要使用自定义 png 或 jpg 即图像作为绘图中的标记,我们可以采取以下步骤 −

  • 设置图形大小并调整子图之间和周围的填充。

  • 制作路径列表以存储图像目录。

  • 制作点列表(x 和 y)。

  • 使用 subplots() 方法创建一个图形和一组子图。

  • 要绘制图像而不是点,请迭代压缩的 x、y 和路径。

  • 使用图像和(x,y)实例化 AnnotationBbox()点。

  • 在两个轴上放置 xticks 和 yticks。

  • 要显示图形,请使用 show() 方法。

示例

import matplotlib.pyplot as plt
from matplotlib.offsetbox import OffsetImage, AnnotationBbox

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

def getImage(path):
   return OffsetImage(plt.imread(path, format="jpg"), zoom=.1)

paths = ['globe.jpg', 'settings.jpg', 'settings.jpg', 'globe.jpg']
x = [8, 4, 3, 6]
y = [5, 3, 4, 7]
fig, ax = plt.subplots()
for x0, y0, path in zip(x, y, paths):
   ab = AnnotationBbox(getImage(path), (x0, y0), frameon=False)
   ax.add_artist(ab)
plt.xticks(range(10))
plt.yticks(range(10))
plt.show()

输出


相关文章


有用资源