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

วิธีตั้งค่าขอบสี่เหลี่ยม Matplotlib ให้อยู่นอกความกว้างที่ระบุ


ในการตั้งค่าขอบสี่เหลี่ยม Matplotlib ให้อยู่นอกความกว้างที่ระบุ เราสามารถทำตามขั้นตอนต่อไปนี้ -

  • กำหนดขนาดรูปและปรับช่องว่างภายในระหว่างและรอบๆ แผนผังย่อย
  • สร้างตัวเลขใหม่หรือเปิดใช้งานตัวเลขที่มีอยู่
  • เพิ่มขวานให้กับร่างซึ่งเป็นส่วนหนึ่งของแผนย่อย
  • เริ่มต้นตัวแปร line_width เพื่อตั้งค่าสี่เหลี่ยมผืนผ้านอกความกว้างที่ระบุ ใช้ตัวแปร xy, w และ h สำหรับจุดศูนย์กลาง ความกว้าง และความสูงของสี่เหลี่ยมผืนผ้า
  • รับตัวอย่างสี่เหลี่ยมผืนผ้าที่มีจุดยึด xy และความสูงและความกว้าง
  • รับอินสแตนซ์ของทรานส์ฟอร์มบ็อกซ์ออฟเซ็ต
  • เพิ่มโปรแกรมแก้ไขศิลปิน r (ขั้นตอนที่ 5)
  • รับคอนเทนเนอร์สำหรับอินสแตนซ์ OffsetBox
  • เพิ่มกล่องคำอธิบายประกอบ ab ลงในกล่องคอนเทนเนอร์
  • หากต้องการแสดงรูป ให้ใช้ show() วิธีการ

ตัวอย่าง

import matplotlib.pyplot as plt
from matplotlib.patches import Rectangle
from matplotlib.offsetbox import AnnotationBbox, AuxTransformBox

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

fig = plt.figure()

ax = fig.add_subplot(111)
ax.plot([1, 6, 8, 6])

line_width = 7
xy, w, h = (1, 3), 2, 2
r = Rectangle(xy, w, h, fc='green', ec='orange', lw=3)

offsetbox = AuxTransformBox(ax.transData)
offsetbox.add_artist(r)

ab = AnnotationBbox(offsetbox, (xy[0] + w /, xy[1] + w /),
   boxcoords="data", pad=0.52, fontsize=line_width,
   bboxprops=dict(facecolor="none", edgecolor='r',
   lw=line_width))
ax.add_artist(ab)

plt.show()

ผลลัพธ์

วิธีตั้งค่าขอบสี่เหลี่ยม Matplotlib ให้อยู่นอกความกว้างที่ระบุ วิธีตั้งค่าขอบสี่เหลี่ยม Matplotlib ให้อยู่นอกความกว้างที่ระบุ