I am trying to get the coordinates xand yall cumulative highs in a vector. I wrote naive for-loop, but I have a feeling that there is a way to do this with numpymore elegance.
Does anyone know of any features, masking methods, or single-line ones numpythat can do this?
Details should be described below:
x = np.abs(np.random.RandomState(0).normal(size=(100)))
y = np.linspace(0,1,x.size)
z = x*y
idx_max = list()
val_max = list()
current = 0
for i,v in enumerate(z):
if v > current:
idx_max.append(i)
val_max.append(v)
current = v
with plt.style.context("seaborn-white"):
fig, ax = plt.subplots(figsize=(10,3), ncols=2)
ax[0].plot(z)
ax[1].plot(z, alpha=0.618)
ax[1].scatter(idx_max, val_max, color="black", edgecolor="maroon", linewidth=1.618)

O.rka source
share