I need to find the maximum x
value associated to the maximum y
value of the following function that I plot using Python matplotlib
module:
# Import modules
import numpy as np
from matplotlib import pyplot as plt
# Define the function
x = np.arange(0., 1000, 0.2)
y = np.abs(-np.exp(-x/1068)+np.exp(-x/46))
# Plot
plt.title("")
plt.xlabel("x")
plt.ylabel("y")
plt.plot(x,y)
plt.grid()
Hence, the trend is this one:
If I use the max()
function in such way:
print(max(y))
It prints only the maximum y value (that in this case is equal to 0.8306243772229114
). How can I do to have also the maximum x value ?
If x
is an np.array and you want to find the x
associated with the maximum y
, you can use np.argmax.
x_max = x[np.argmax(y)]