class_docstr: Create the arrays sphere_x, sphere_y, sphere_z to plot a sphere.
  
  Create the arrays sphere_x, sphere_y, sphere_z of values
  to plot the wireframe of a sphere.
  Their shape is (n_meridians, n_circles_latitude).
class_docstr_tok: ["Create","the","arrays","sphere_x",",","sphere_y",",","sphere_z","to","plot","a","sphere",".","Create","the","arrays","sphere_x",",","sphere_y",",","sphere_z","of","values","to","plot","the","wireframe","of","a","sphere",".","Their","shape","is","(","n_meridians",",","n_circles_latitude",")","."]
docstr: Plot a heatmap defined by a loss on the sphere.
docstr_tok: ["Plot","a","heatmap","defined","by","a","loss","on","the","sphere","."]
code: def plot_heatmap(
      self, ax, scalar_function, n_points=16000, alpha=0.2, cmap="jet"
  ):
      """Plot a heatmap defined by a loss on the sphere."""
      points = self.get_fibonnaci_points(n_points)
      intensity = gs.array([scalar_function(x) for x in points.T])
      ax.scatter(
          points[0, :],
          points[1, :],
          points[2, :],
          c=intensity,
          alpha=alpha,
          marker=".",
          cmap=plt.get_cmap(cmap),
      )
  
file_path: geomstats/geomstats/visualization/hypersphere.py
imports: import matplotlib.pyplot
  from mpl_toolkits.mplot3d import Axes3D
  import geomstats.backend
  from geomstats.geometry.hypersphere import Hypersphere
label_desc: Use image node_id 7 for calling the Sphere obj's underlying member method code with example usage: obj.plot_heatmap(ax, scalar_function, n_points, alpha, cmap) without return types