docs: def make_plots(datadf, settings):
      '''
      Call plotting functions from nanoplotter
      settings["lengths_pointer"] is a column in the DataFrame specifying which lengths to use
      '''
      plot_settings = dict(font_scale=settings["font_scale"])
      nanoplotter.plot_settings(plot_settings, dpi=settings["dpi"])
      color = nanoplotter.check_valid_color(settings["color"])
      plotdict = {type: settings["plots"].count(type) for type in ["kde", "hex", "dot", 'pauvre']}
      plots = []
      if settings["N50"]:
          n50 = nanomath.get_N50(np.sort(datadf["lengths"]))
      else:
          n50 = None
      plots.extend(
          nanoplotter.length_plots(
              array=datadf[datadf["length_filter"]]["lengths"],
              name="Read length",
              path=settings["path"],
              n50=n50,
              color=color,
              figformat=settings["format"],
              title=settings["title"])
      )
      logging.info("Created length plots")
      if "quals" in datadf:
          plots.extend(
              nanoplotter.scatter(
                  x=datadf[datadf["length_filter"]][settings["lengths_pointer"]],
                  y=datadf[datadf["length_filter"]]["quals"],
                  names=['Read lengths', 'Average read quality'],
                  path=settings["path"] + "LengthvsQualityScatterPlot",
                  color=color,
                  figformat=settings["format"],
                  plots=plotdict,
                  log=settings["logBool"],
                  title=settings["title"],
                  plot_settings=plot_settings)
          )
          logging.info("Created LengthvsQual plot")
      if "channelIDs" in datadf:
          plots.extend(
              nanoplotter.spatial_heatmap(
                  array=datadf["channelIDs"],
                  title=settings["title"],
                  path=settings["path"] + "ActivityMap_ReadsPerChannel",
                  color="Greens",
                  figformat=settings["format"])
          )
          logging.info("Created spatialheatmap for succesfull basecalls.")
      if "start_time" in datadf:
          plots.extend(
              nanoplotter.time_plots(
                  df=datadf,
                  path=settings["path"],
                  color=color,
                  figformat=settings["format"],
                  title=settings["title"],
                  log_length=settings["logBool"],
                  plot_settings=plot_settings)
          )
          logging.info("Created timeplots.")
      if "aligned_lengths" in datadf and "lengths" in datadf:
          plots.extend(
              nanoplotter.scatter(
                  x=datadf[datadf["length_filter"]]["aligned_lengths"],
                  y=datadf[datadf["length_filter"]]["lengths"],
                  names=["Aligned read lengths", "Sequenced read length"],
                  path=settings["path"] + "AlignedReadlengthvsSequencedReadLength",
                  figformat=settings["format"],
                  plots=plotdict,
                  color=color,
                  title=settings["title"],
                  plot_settings=plot_settings)
          )
          logging.info("Created AlignedLength vs Length plot.")
      if "mapQ" in datadf and "quals" in datadf:
          plots.extend(
              nanoplotter.scatter(
                  x=datadf["mapQ"],
                  y=datadf["quals"],
                  names=["Read mapping quality", "Average basecall quality"],
                  path=settings["path"] + "MappingQualityvsAverageBaseQuality",
                  color=color,
                  figformat=settings["format"],
                  plots=plotdict,
                  title=settings["title"],
                  plot_settings=plot_settings)
          )
          logging.info("Created MapQvsBaseQ plot.")
          plots.extend(
              nanoplotter.scatter(
                  x=datadf[datadf["length_filter"]][settings["lengths_pointer"]],
                  y=datadf[datadf["length_filter"]]["mapQ"],
                  names=["Read length", "Read mapping quality"],
                  path=settings["path"] + "MappingQualityvsReadLength",
                  color=color,
                  figformat=settings["format"],
                  plots=plotdict,
                  log=settings["logBool"],
                  title=settings["title"],
                  plot_settings=plot_settings)
          )
          logging.info("Created Mapping quality vs read length plot.")
      if "percentIdentity" in datadf:
          minPID = np.percentile(datadf["percentIdentity"], 1)
          if "aligned_quals" in datadf:
              plots.extend(
                  nanoplotter.scatter(
                      x=datadf["percentIdentity"],
                      y=datadf["aligned_quals"],
                      names=["Percent identity", "Average Base Quality"],
                      path=settings["path"] + "PercentIdentityvsAverageBaseQuality",
                      color=color,
                      figformat=settings["format"],
                      plots=plotdict,
                      stat=stats.pearsonr,
                      minvalx=minPID,
                      title=settings["title"],
                      plot_settings=plot_settings)
              )
              logging.info("Created Percent ID vs Base quality plot.")
          plots.extend(
              nanoplotter.scatter(
                  x=datadf[datadf["length_filter"]][settings["lengths_pointer"]],
                  y=datadf[datadf["length_filter"]]["percentIdentity"],
                  names=["Aligned read length", "Percent identity"],
                  path=settings["path"] + "PercentIdentityvsAlignedReadLength",
                  color=color,
                  figformat=settings["format"],
                  plots=plotdict,
                  stat=stats.pearsonr,
                  log=settings["logBool"],
                  minvaly=minPID,
                  title=settings["title"],
                  plot_settings=plot_settings)
          )
          logging.info("Created Percent ID vs Length plot")
      return plots