One of the packages in R to generate venn diagrams is VennDiagram. It draws venn diagrams fast and allows sufficient customization. However, it is not clear how to add external text to the diagram from the manual. Let us say we want to add number of samples from each list to the diagram some thing like this:
Simulated data has two data frames:df1 and df2. Each df has 10 genes and 4 genes  in common. Gene names are in row names of the data frame. Example code for simulation and for above image is given below:
============================================
> gene=paste0("gene_", 1:10)
> expn=matrix(rep(rnorm(1:10),10),10,10)
> df1= data.frame("expn"=expn)
> row.names(df1)=gene
> gene2=paste0("gene_", 7:16)
> expn2=matrix(rep(rnorm(1:10),10),10,10)
> df2= data.frame("expn"=expn2)
> row.names(df2)=gene2
> library(VennDiagram)
> venn.diagram(list("df1 (n=10)"=row.names(df1), "df2 (n=10)"=row.names(df2)), filename = "test.tiff", height=800, width=800, resolution =300,cex=1, cat.cex=1, cat.pos = c(-5,5),cat.dist=c(0.04,0.04))
============================================
In current working directory of R, you would find a tiff file with name test.tiff. There is no way of turning of log files with this function within this function, as of today. Each time the code is executed, function creates a log file and soon they will accumulate if you are fiddling with the function. However you can suppress the logs by typing in, before venn.diagram above (once per execution):
=================================================
futile.logger::flog.threshold(futile.logger::ERROR, name = "VennDiagramLogger")
 ===============================================