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

Vẽ đường cong nối hai điểm thay vì đường thẳng trong matplotlib

Để vẽ đường cong nối hai điểm thay vì đường thẳng trong matplotlib, thực hiện các bước sau:

  • Đặt kích thước hình và điều chỉnh padding giữa và xung quanh subplots.
  • Định nghĩa phương thức draw_curve() để tạo đường cong với biểu thức toán học.
  • Vẽ điểm dữ liệu point1 và point2.
  • Vẽ điểm dữ liệu x và y trả về từ draw_curve().
  • Để hiển thị hình, dùng phương thức show().

Ví dụ

import matplotlib.pyplot as plt
import numpy as np
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True
def draw_curve(p1, p2):
    a = (p2[1] - p1[1]) / (np.cosh(p2[0]) - np.cosh(p1[0]))
    b = p1[1] - a * np.cosh(p1[0])
    x = np.linspace(p1[0], p2[0], 100)
    y = a * np.cosh(x) + b
    return x, y
p1 = [0, 1]
p2 = [1, 2]
x, y = draw_curve(p1, p2)
plt.plot(p1[0], p1[1], 'o')
plt.plot(p2[0], p2[1], 'o')
plt.plot(x, y)
plt.show()

Kết quả

Sẽ tạo ra đầu ra sau:

Vẽ đường cong nối hai điểm thay vì đường thẳng trong matplotlibVẽ đường cong nối hai điểm thay vì đường thẳng trong matplotlib