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

วิธีการพล็อตเส้น (ลูกโซ่เหลี่ยม) ด้วย matplotlib ด้วยความราบรื่นน้อยที่สุด?


ในการพล็อตเส้น (ลูกโซ่เหลี่ยม) กับ matplotlib ที่มีการปรับให้เรียบน้อยที่สุด เราสามารถทำตามขั้นตอนต่อไปนี้ -

  • กำหนดขนาดรูปและปรับช่องว่างภายในระหว่างและรอบๆ แผนผังย่อย
  • กำหนดค่าเริ่มต้นของตัวแปร N เพื่อรับจำนวนจุดข้อมูล
  • สร้างจุดข้อมูล x และ y โดยใช้ numpy
  • รับการแก้ไขลูกบาศก์โมโนโทนิก 1-D โดยใช้ phip() วิธีการ
  • พล็อต (x, interp(x)) และ (x, y) จุดข้อมูลโดยใช้ตัวเลข
  • หากต้องการแสดงรูป ให้ใช้ show() วิธีการ

ตัวอย่าง

import numpy as np
from scipy.interpolate import pchip
import matplotlib.pyplot as plt

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

N = 50
x = np.linspace(-10, 10, N)
y = np.sin(x)
interp = pchip(x, y)

plt.plot(x, interp(x), color='red')
plt.plot(x, y, 'bo')

plt.show()

ผลลัพธ์

วิธีการพล็อตเส้น (ลูกโซ่เหลี่ยม) ด้วย matplotlib ด้วยความราบรื่นน้อยที่สุด? วิธีการพล็อตเส้น (ลูกโซ่เหลี่ยม) ด้วย matplotlib ด้วยความราบรื่นน้อยที่สุด?