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

วิธีรับคุณสมบัติของวัตถุที่เลือกใน mplot3d (matplotlib + python)


ในการรับคุณสมบัติของวัตถุที่เลือกใน matplotlib 3d เราสามารถทำตามขั้นตอนต่อไปนี้

ขั้นตอน

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

  • สร้างตัวเลขใหม่หรือเปิดใช้งานตัวเลขที่มีอยู่

  • เพิ่ม 'ขวาน' ไปที่ร่างซึ่งเป็นส่วนหนึ่งของการจัดโครงเรื่องย่อย

  • สร้างแผนภาพกระจายของจุดข้อมูลแบบสุ่ม

  • ผูกฟังก์ชัน *pick_event_method* ถึงงาน *pic_event* .

  • พิมพ์ x, y และ z พิกัดงาน

  • หากต้องการแสดงรูป ให้ใช้ แสดง() วิธีการ

ตัวอย่าง

นำเข้า matplotlib.pyplot เป็น pltimport numpy เป็น npplt.rcParams["figure.figsize"] =[7.00, 3.50]plt.rcParams["figure.autolayout"] =Truefig =plt.figure()ax =fig.add_subplot (111, ฉาย ='3d')# กระจาย plotax.scatter (np.random.rand(10), np.random.rand(10), np.random.rand(10), c=np.random.rand( 10), cmap='hot', picker=5, s=100)# pick_event_methoddef pick_event_method(event):ind =event.ind[0] x, y, z =event.artist._offsets3d print(x[ind], y[ind], z[ind])# เชื่อมต่อ pick_event_method กับ pick_eventfig.canvas.mpl_connect('pick_event', pick_event_method)plt.show()

ผลลัพธ์

มันจะสร้างผลลัพธ์ต่อไปนี้ -

วิธีรับคุณสมบัติของวัตถุที่เลือกใน mplot3d (matplotlib + python)

ตอนนี้ คลิกวัตถุจากพล็อตแล้วจะแสดงพิกัดของจุดเหล่านั้นบนคอนโซล

0.29471404722373373 0.7272382336952506 0.5517015408767380.7393059098968329 0.880733225356321 0.207339955795566080.4055966753557102 0.9709122739514328 0.101161035897320840.2781962334047674 0.485316261061295668557