Figure 1 . Dotplot showing mean runtimes for filtering vcf files according to the following thresholds: minimum depth per genotype = 5, and minimum genotype quality per genotype = 30. Each input vcf file contained between 10K and 500K SNPs for 100 individual samples. The three approaches to performing this filtering were as follows; SNPfiltR - using the function SNPfiltR::hard_filter() on a vcf file that has already been read into the local memory as a vcfR object; SNPfiltR+vcfR - wrapping the function vcfR::read.vcf() inside of a call to SNPfiltR::hard_filter(), in order to read in the given vcf file as a vcfR object, and then perform filtering on the vcfR object; and VCFtools – directly specifying the full path to the given vcf file to VCFtools to filter and output a new, filtered vcf file.