Python: размещение окружностей между двумя кривыми в логарифмическом масштабе, чтобы соединить начало круга - PullRequest
1 голос
/ 03 марта 2020

У меня есть две кривые, построенные в логарифмическом масштабе (красный и синий).

Как мне вписаться в воображаемые круги между кривыми, чтобы я мог соединить источники кругов, чтобы сформировать другую кривая?

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

На рисунке ниже показан грубый набросок зеленой кривой, образованной путем соединения исходных точек воображаемых кругов. enter image description here

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...