class_docstr: The basic one dimensional Gamma-Gaussian-Gamma Mixture estimation
  class, where the first gamma has a negative sign, while the second
  one has a positive sign.
  
  7 parameters are used:
  - shape_n: negative gamma shape
  - scale_n: negative gamma scale
  - mean: gaussian mean
  - var: gaussian variance
  - shape_p: positive gamma shape
  - scale_p: positive gamma scale
  - mixt: array of mixture parameter
  (weights of the n-gamma,gaussian and p-gamma)
class_docstr_tok: ["The","basic","one","dimensional","Gamma-Gaussian-Gamma","Mixture","estimation","class",",","where","the","first","gamma","has","a","negative","sign",",","while","the","second","one","has","a","positive","sign",".","7","parameters","are","used",":","-","shape_n",":","negative","gamma","shape","-","scale_n",":","negative","gamma","scale","-","mean",":","gaussian","mean","-","var",":","gaussian","variance","-","shape_p",":","positive","gamma","shape","-","scale_p",":","positive","gamma","scale","-","mixt",":","array","of","mixture","parameter","(","weights","of","the","n-gamma",",","gaussian","and","p-gamma",")"]
docstr: Visualization of mixture shown on the empirical histogram of x
  
  Parameters
  ----------
  x: ndarray of shape (nditem,)
      data
  mpaxes: matplotlib axes, optional
      axes handle used for the plot if None, new axes are created.
docstr_tok: ["Visualization","of","mixture","shown","on","the","empirical","histogram","of","x","Parameters","--","--","--","--","--","x",":","ndarray","of","shape","(","nditem",",",")","data","mpaxes",":","matplotlib","axes",",","optional","axes","handle","used","for","the","plot","if","None",",","new","axes","are","created","."]
code: def show(self, x, mpaxes=None):
      """Visualization of mixture shown on the empirical histogram of x
  
      Parameters
      ----------
      x: ndarray of shape (nditem,)
          data
      mpaxes: matplotlib axes, optional
          axes handle used for the plot if None, new axes are created.
      """
      import matplotlib.pyplot as plt
  
      step = 3.5 * np.std(x) / np.exp(np.log(np.size(x)) / 3)
      bins = max(10, int((x.max() - x.min()) / step))
      h, c = np.histogram(x, bins)
      h = h.astype(np.float64) / np.size(x)
      dc = c[1] - c[0]
  
      ng = self.mixt[0] * _gam_dens(self.shape_n, self.scale_n, -c)
      y = self.mixt[1] * _gaus_dens(self.mean, self.var, c)
      pg = self.mixt[2] * _gam_dens(self.shape_p, self.scale_p, c)
      z = y + pg + ng
  
      if mpaxes is None:
          plt.figure()
          ax = plt.subplot(1, 1, 1)
      else:
          ax = mpaxes
  
      ax.plot(0.5 * (c[1:] + c[:-1]), h / dc, linewidth=2, label="data")
      ax.plot(c, ng, "c", linewidth=2, label="negative gamma component")
      ax.plot(c, y, "r", linewidth=2, label="Gaussian component")
      ax.plot(c, pg, "g", linewidth=2, label="positive gamma component")
      ax.plot(c, z, "k", linewidth=2, label="mixture distribution")
      ax.set_title(
          "Fit of the density with a Gamma-Gaussian mixture",
          fontsize=12,
      )
      l = ax.legend()
      for t in l.get_texts():
          t.set_fontsize(12)
      ax.set_xticklabels(ax.get_xticks(), fontsize=12)
      ax.set_yticklabels(ax.get_yticks(), fontsize=12)
  
imports: import numpy
  import scipy.special
  import scipy.stats
label_desc: Use image node_id 10 for calling the GGGM obj's underlying member method code with example usage: obj.show(x, mpaxes) without return types