Python:在对数比例的两条曲线之间拟合圆,以便连接圆的原点

Python:在对数比例的两条曲线之间拟合圆,以便连接圆的原点,python,numpy,matplotlib,Python,Numpy,Matplotlib,我有两条以对数y比例绘制的曲线(红色和蓝色) 如何在曲线之间的假想圆中进行拟合,以便连接圆的原点以形成另一条曲线 import numpy as np import matplotlib.pyplot as plt from scipy import interpolate xmin, xmax = 2000, 7000 ymin, ymax = 10, 50000 #arrays x_grid = np.array([2000, 3000, 4000, 5000, 6000, 7000])

我有两条以对数y比例绘制的曲线(红色和蓝色)

如何在曲线之间的假想圆中进行拟合,以便连接圆的原点以形成另一条曲线

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

xmin, xmax = 2000, 7000
ymin, ymax = 10, 50000

#arrays
x_grid = np.array([2000, 3000, 4000, 5000, 6000, 7000])
y_blue_grid = np.array([15, 100, 200, 300, 400, 500])
y_red_grid = np.array([20, 400, 10000, 500000, 500000, 500000])

# create interpolating curves in logspace
tck_red = interpolate.splrep(x_grid, np.log(y_red_grid), s=0)
tck_blue = interpolate.splrep(x_grid, np.log(y_blue_grid), s=0)
tck_green = interpolate.splrep(x_grid, np.log(y_green_grid), s=0)
x = np.linspace(xmin, xmax)
yr = np.exp(interpolate.splev(x, tck_red, der=0))
yb = np.exp(interpolate.splev(x, tck_blue, der=0))

#plot the curves
fig, ax = plt.subplots(figsize=(8, 8))
ax.set_xlim(xmin=xmin, xmax=xmax)
ax.set_ylim(ymin=ymin, ymax=ymax)
ax.set_yscale('log')
plt.plot(x, yr, color='red')
plt.plot(x, yb, color='blue')
下图显示了连接假想圆原点形成的绿色曲线的草图。


多谢各位

虚圆法重要吗?或者你在寻找任何能帮助你找到一条位于其他两条曲线中间的曲线的方法吗?一般角度的平分线并不是那么容易…相关:@Owen不,任何其他方法都可以。我尝试过的其他平均方法,因为它在对数空间中,所以会使中心曲线倾斜。虚圆方法重要吗?或者你在寻找任何能帮助你找到一条位于其他两条曲线中间的曲线的方法吗?一般角度的平分线并不是那么容易…相关:@Owen不,任何其他方法都可以。我尝试过的其他平均方法会使中心曲线倾斜,因为它位于对数空间中。