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

วิธีวาดเส้นเรียบด้วย matplotlib

ในการวาดเส้นเรียบ (smooth line) ด้วย matplotlib สามารถทำตามขั้นตอนดังนี้:

ขั้นตอน

  • ตั้งค่าขนาดรูปและปรับ padding ระหว่างและรอบ subplots

  • สร้างรายการข้อมูล x และ y

  • วาดข้อมูล x และ y

  • สร้าง x_new และ bspline สำหรับเส้นเรียบ

  • ได้ y_new คำนวณ coefficients ของ interpolating B-spline

  • วาด x_new และ y_new ด้วยเมธอด plot()

  • แสดงรูปด้วยเมธอด show()

ตัวอย่าง

import numpy as np
from matplotlib import pyplot as plt
from scipy import interpolate
# ตั้งค่าขนาดรูป
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
# x และ y data points
x = np.array([1, 3, 4, 6, 7])
y = np.array([5, 1, 3, 2, 4])
# วาดข้อมูลต้นฉบับ
plt.plot(x, y)
# x_new, bspline, y_new
x_new = np.linspace(1, 5, 50)
bspline = interpolate.make_interp_spline(x, y)
y_new = bspline(x_new)
# วาดข้อมูลใหม่เส้นเรียบ
plt.plot(x_new, y_new)
plt.show()

ผลลัพธ์

จะแสดงเส้นหยาบ 5 จุด และเส้นเรียบ 50 จุด จาก B-spline interpolation

วิธีวาดเส้นเรียบด้วย matplotlib