Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Cách vẽ đường (polygonal chain) với matplotlib với độ mượt tối thiểu?


Để vẽ đường (polygonal chain) với matplotlib với độ mượt tối thiểu, chúng ta có thể thực hiện các bước sau:

  • Thiết lập kích thước figure và điều chỉnh padding giữa và xung quanh subplots.
  • Khởi tạo biến N để lấy số điểm dữ liệu.
  • Tạo điểm dữ liệu x và y bằng numpy.
  • Lấy nội suy cubic đơn điệu 1-D, dùng phương thức pchip().
  • Vẽ điểm dữ liệu (x, interp(x)) và (x, y) bằng numpy.
  • Để hiển thị figure, dùng phương thức show().

Ví dụ

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()

Kết quả

Cách vẽ đường (polygonal chain) với matplotlib với độ mượt tối thiểu?Cách vẽ đường (polygonal chain) với matplotlib với độ mượt tối thiểu?