code: def classifyplot_from_valfile(val_file, outtype="png", title=None, size=None,
                                samples=None, callers=None):
      
      mpl.use('Agg', force=True)
      df = pd.read_csv(val_file)
      grouped = df.groupby(["sample", "caller", "vtype"])
      df = grouped.apply(_calculate_fnr_fdr)
      df = df.reset_index()
      if len(df) == 0:
          return []
      else:
          out_file = "%s.%s" % (os.path.splitext(val_file)[0], outtype)
          _do_classifyplot(df, out_file, title, size, samples, callers)
          return [out_file]
docs: Create a plot from a summarized validation file.
  
      Does new-style plotting of summarized metrics of
      false negative rate and false discovery rate.
      https://en.wikipedia.org/wiki/Sensitivity_and_specificity