import matplotlib.pyplot as plt
import numpy as np
from plotly import graph_objects as go
%matplotlib inline
def H(x, y):
return y ** 2 / 2 - np.cos(x)
x_range = np.linspace(-7, 7, 500)
y_range = np.linspace(-3, 3, 500)
X, Y = np.meshgrid(x_range, y_range)
plt.contour(X, Y, H(X, Y), levels=30)
<matplotlib.contour.QuadContourSet at 0x7fd74224a208>
go.Figure(go.Surface(x=X, y=Y, z=H(X, Y)))