Совмещение графика, построенного по точкам, с графиком функции
Есть график изменения величины в зависимости от времени. Время изменяется линейно. На него нужно наложить график функции так, чтобы ноль этой функции располагался в определенный день на определенном уровне. Датасет actual_df изменения величины от времени имеет вид
Date Close
2020-10-26 00:00:00 74.645
2020-10-26 04:00:00 74.593
2020-10-26 08:00:00 74.831
2020-10-26 12:00:00 74.788
2020-10-26 16:00:00 74.661
2020-10-26 20:00:00 74.615
2020-10-27 00:00:00 74.631
2020-10-27 04:00:00 74.709
2020-10-27 08:00:00 74.514
2020-10-27 12:00:00 74.544
этот график строится без проблем кодом
plt.plot(actual_df)
График функции сам по себе также без проблем строится кодом
f = (x-4)**2
plot(f)
Как совместить эти два графика таким образом, чтобы нижняя точка графика функции находилась, например, в точке (2020-10-27 04:00:00 71.25)?
Ответы (1 шт):
Как-то вот так, хотя с виду какая-то ерунда получается, возможно по x должны быть дни, например? График же слишком резкий. Ну и подписи по x надо прореживать, они сливаются.
import pandas as pd
import numpy as np
import matplotlib.pylab as plt
df = pd.read_csv('Example.csv', index_col=0)
plt.figure(figsize=(20,10));
plt.plot(df);
min_x = np.where(df.index == '2020-10-27 04:00:00')[0][0]
min_y = 71.25
x_start = 3
x_end = 12
x = np.arange(x_start, x_end)
f = (x-min_x)**2 + min_y
plt.plot(df.index[x_start:x_end],f);
