Я пытаюсь определить наиболее эффективный способ создания группы line
plots
, отображаемой в виде диапазона.Я надеюсь произвести что-то вроде:

Я постараюсь объяснить как можно больше.Извините, если я пропустил какую-либо информацию.Я предполагаю, что x-axis
будет в диапазоне timestamps
от hours
(8 утра-9 утра-10 утра и т. Д.).Общий диапазон будет между 8:00:00 и 27:00:00.y-axis
- это count
значений, возникающих в любой момент времени.Диапазон в plot
будет представлять значения max
, min
и average
.
Пример df
приведен ниже:
import pandas as pd
import matplotlib.pyplot as plt
d = ({
'Time1' : ['8:00:00','9:30:00','9:40:00','10:25:00','12:30:00','1:31:00','1:35:00','2:45:00','4:50:00'],
'Occurring1' : ['1','2','3','4','5','5','6','6','7'],
'Time2' : ['8:10:00','9:34:00','9:48:00','10:40:00','1:30:00','2:31:00','3:35:00','3:45:00','4:55:00'],
'Occurring2' : ['1','2','2','3','4','5','5','6','7'],
'Time3' : ['9:00:00','9:34:00','9:58:00','10:45:00','10:50:00','12:31:00','1:35:00','2:15:00','3:55:00'],
'Occurring3' : ['1','2','3','4','4','5','6','7','8'],
})
df = pd.DataFrame(data = d)
Такэто df
представляет 3 различных набора data
.Время, значения и четное число записей могут различаться.
Ниже приведен первоначальный пример.Хотя я не уверен, если мне нужно переосмыслить свой подход.Подойдет ли скользящее уравнение?То, что оценивает число значений max
, min
, avg
, возникающих за каждый час в df
(8: 00: 00-9: 00: 00).
Ниже приведенополная начальная попытка:
import pandas as pd
import matplotlib.pyplot as plt
d = ({
'Time1' : ['8:00:00','9:30:00','9:40:00','10:25:00','12:30:00','1:31:00','1:35:00','2:45:00','4:50:00'],
'Occurring1' : ['1','2','3','4','5','5','6','6','7'],
'Time2' : ['8:10:00','9:34:00','9:48:00','10:40:00','1:30:00','2:31:00','3:35:00','3:45:00','4:55:00'],
'Occurring2' : ['1','2','2','3','4','5','5','6','7'],
'Time3' : ['9:00:00','9:34:00','9:58:00','10:45:00','10:50:00','12:31:00','1:35:00','2:15:00','3:55:00'],
'Occurring3' : ['1','2','3','4','4','5','6','7','8'],
})
df = pd.DataFrame(data = d)
fig, ax = plt.subplots(figsize = (10,6))
ax.plot(df['Time1'], df['Occurring1'])
ax.plot(df['Time2'], df['Occurring2'])
ax.plot(df['Time3'], df['Occurring3'])
plt.show()