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

จะรับตำนานทั้งหมดจากพล็อตใน Matplotlib ได้อย่างไร?


ในการรับตำนานทั้งหมดจากพล็อตใน matplotlib เราสามารถใช้ get_children() วิธีรับคุณสมบัติทั้งหมดของแกน จากนั้นวนซ้ำคุณสมบัติทั้งหมด หากรายการเป็นตัวอย่างของตำนาน ให้รับข้อความตำนาน

ขั้นตอน

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

  • สร้างจุดข้อมูล x โดยใช้ numpy

  • สร้างร่างและชุดแผนย่อย

  • พล็อต บาป(x) และ cos(x) โดยใช้ plot() วิธีการที่มีฉลากและสีต่างกัน

  • รับลูกของแกนและรับข้อความของตำนาน

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

ตัวอย่าง

import numpy as np
from matplotlib import pyplot as plt
import matplotlib

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

x = np.linspace(-10, 10, 100)
fig, ax = plt.subplots()

ax.plot(np.sin(x), color='red', lw=7, label="y=sin(x)")
ax.plot(np.cos(x), color='orange', lw=7, label="y=cos(x)")

plt.legend(loc='upper right')

for item in ax.get_children():
   if isinstance(item, matplotlib.legend.Legend):
      print(item.texts)

plt.show()

ผลลัพธ์

จะรับตำนานทั้งหมดจากพล็อตใน Matplotlib ได้อย่างไร?