code: def likelihood2(args):
      
      from matplotlib import gridspec
  
      p = OptionParser(likelihood2.__doc__)
      opts, args, iopts = p.set_image_options(args, figsize="10x5",
                                  style="white", cmap="coolwarm")
  
      if len(args) != 1:
          sys.exit(not p.print_help())
  
      jsonfile, = args
      fig = plt.figure(figsize=(iopts.w, iopts.h))
      gs = gridspec.GridSpec(2, 2)
      ax1 = fig.add_subplot(gs[:, 0])
      ax2 = fig.add_subplot(gs[0, 1])
      ax3 = fig.add_subplot(gs[1, 1])
      plt.tight_layout(pad=3)
      pf = plot_panel(jsonfile, ax1, ax2, ax3, opts.cmap)
  
      root = fig.add_axes([0, 0, 1, 1])
      normalize_axes(root)
  
      image_name = "likelihood2.{}.".format(pf) + iopts.format
      savefig(image_name, dpi=iopts.dpi, iopts=iopts)
docs: %prog likelihood2 100_20.json
  
      Plot the likelihood surface and marginal distributions.