Computer >> Máy Tính >  >> Lập trình >> Python

Làm thế nào để sử dụng điểm đánh dấu hình ảnh png tùy chỉnh trong một biểu đồ (Matplotlib)?

Để sử dụng custome png hoặc jpg, tức là một hình ảnh làm điểm đánh dấu trong một biểu đồ, chúng ta có thể thực hiện các bước sau -

  • Đặt kích thước hình và điều chỉnh phần đệm giữa và xung quanh các ô con.

  • Tạo danh sách đường dẫn để lưu trữ các thư mục hình ảnh.

  • Lập danh sách (x và y) các điểm.

  • Sử dụng ô con () , tạo một hình và một tập hợp các ô phụ.

  • Để vẽ biểu đồ hình ảnh thay vì điểm, hãy lặp lại x, y và đường dẫn đã nén.

  • Khởi tạo AnnotationBbox () với hình ảnh và (x, y) điểm.

  • Đặt xticks que đè trên cả hai trục.

  • Để hiển thị hình này, hãy sử dụng show () phương pháp.

Ví dụ

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()

Đầu ra

Làm thế nào để sử dụng điểm đánh dấu hình ảnh png tùy chỉnh trong một biểu đồ (Matplotlib)?