在 matplotlib 中绘制连接两点的曲线而不是直线
matplotlibpythondata visualization
要在 matplotlib 中绘制连接两点的曲线而不是直线,我们可以采取以下步骤 −
- 设置图形大小并调整子图之间和周围的填充。
- 定义 draw_curve() 方法以使用数学表达式绘制曲线。
- 绘制 point1 和 point2 数据点。
- 绘制从 draw_curve() 方法返回的 x 和 y 数据点。
- 要显示图形,请使用 show() 方法。
示例
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()
输出
它将产生以下输出