Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

จะใช้เครื่องหมายรูปภาพ png ที่กำหนดเองในพล็อต (Matplotlib) ได้อย่างไร?


ในการใช้ custome png หรือ jpg เช่นรูปภาพเป็นเครื่องหมายในพล็อต เราสามารถทำตามขั้นตอนต่อไปนี้ -

  • กำหนดขนาดรูปและปรับช่องว่างภายในระหว่างและรอบๆ แผนผังย่อย

  • สร้างรายการพาธเพื่อจัดเก็บไดเร็กทอรีของรูปภาพ

  • ทำรายการ (x และ y) ของคะแนน

  • การใช้ แผนย่อย() วิธีการสร้างร่างและชุดของแผนย่อย

  • หากต้องการพล็อตรูปภาพแทนจุด ให้ทำซ้ำซิป x, y และเส้นทาง

  • ยกตัวอย่าง AnnotationBbox() พร้อมรูปภาพและ (x, y) คะแนน

  • ใส่ 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()

ผลลัพธ์

จะใช้เครื่องหมายรูปภาพ png ที่กำหนดเองในพล็อต (Matplotlib) ได้อย่างไร?