diff --git a/DC_theme_generator.R b/DC_theme_generator.R index c8bdc1c..aed78dd 100644 --- a/DC_theme_generator.R +++ b/DC_theme_generator.R @@ -1,4 +1,4 @@ -DC_theme_generator <- function(type, legend=T, ticks="out", x.axis.angle=0, hjust=0.5, vjust=0.5, fontsize.cex=1.5, fontfamily="serif", fontstyle="bold.italic"){ +DC_theme_generator <- function(type, legend=T, ticks="out", x.axis.angle=0, hjust=0.5, vjust=0.5, fontsize.cex=1.5, fontfamily="serif", ax.fontstyle="bold.italic"){ # # Generate themes for ggplot2 # # Author: Deepankar Chakroborty @@ -9,7 +9,7 @@ DC_theme_generator <- function(type, legend=T, ticks="out", x.axis.angle=0, hjus # type: 'L', 'square' # ticks: 'in', 'out' # fontfamily: 'serif' , 'sans' , 'mono' - # fontstyle = 'plain', 'italic', 'bold', 'bold.italic' + # ax.fontstyle = 'plain', 'italic', 'bold', 'bold.italic' ticks <- tolower(ticks) fontfamily <- tolower(fontfamily) @@ -25,16 +25,21 @@ DC_theme_generator <- function(type, legend=T, ticks="out", x.axis.angle=0, hjus panel.background=element_blank(), panel.grid.major=element_line(color=NA), axis.ticks = element_line(colour = "black"), - text = element_text(family = fontfamily, - face = fontstyle), + text = element_text(family = fontfamily), + plot.title = element_text(family = fontfamily, + face="bold", + color = "black", + size = rel(fontsize.cex)), axis.ticks.length = unit(ifelse(ticks=="in",-0.2,0.2),"cm"), - axis.title = element_text(size=rel(fontsize.cex)), + axis.title = element_text(family = fontfamily, + face = ax.fontstyle, + size=rel(fontsize.cex)), axis.text.y = element_text(family = fontfamily, face = "plain", size = rel(fontsize.cex), hjust = 0.5, angle = 0, - color="black", + color = "black", margin=unit(c(0.3,0.3,0.3,0.3), "cm")), axis.text.x = element_text(family = fontfamily, face = "plain", @@ -42,7 +47,7 @@ DC_theme_generator <- function(type, legend=T, ticks="out", x.axis.angle=0, hjus hjust = hjust, vjust = vjust, size = rel(fontsize.cex), - color="black", + color = "black", margin=unit(c(0.3,0.3,0.3,0.3), "cm")), legend.key= element_rect(fill=NA, colour = NA) @@ -57,10 +62,15 @@ DC_theme_generator <- function(type, legend=T, ticks="out", x.axis.angle=0, hjus panel.background=element_blank(), panel.grid.major=element_line(color=NA), axis.ticks = element_line(colour = "black"), - text = element_text(family = fontfamily, - face = fontstyle), + text = element_text(family = fontfamily), + plot.title = element_text(family = fontfamily, + face="bold", + color = "black", + size = rel(fontsize.cex)), axis.ticks.length = unit(ifelse(ticks=="in",-0.2,0.2),"cm"), - axis.title = element_text(size=rel(fontsize.cex)), + axis.title = element_text(family = fontfamily, + face = ax.fontstyle, + size=rel(fontsize.cex)), axis.text.y = element_text(family = fontfamily, face = "plain", size = rel(fontsize.cex), @@ -74,7 +84,7 @@ DC_theme_generator <- function(type, legend=T, ticks="out", x.axis.angle=0, hjus hjust = hjust, vjust = vjust, size = rel(fontsize.cex), - color="black", + color = "black", margin=unit(c(0.3,0.3,0.3,0.3), "cm")), legend.key= element_rect(fill=NA, colour = NA), @@ -94,10 +104,15 @@ DC_theme_generator <- function(type, legend=T, ticks="out", x.axis.angle=0, hjus panel.grid.major = element_blank(), panel.grid.minor = element_blank(), axis.ticks = element_line(colour = "black"), - text = element_text(family = fontfamily, - face = fontstyle), + text = element_text(family = fontfamily), + plot.title = element_text(family = fontfamily, + face="bold", + color = "black", + size = rel(fontsize.cex)), axis.ticks.length = unit(ifelse(ticks=="in",-0.2,0.2), "cm"), - axis.title = element_text(size=rel(fontsize.cex)), + axis.title = element_text(family = fontfamily, + face = ax.fontstyle, + size=rel(fontsize.cex)), axis.text.y = element_text(family = fontfamily, face = "plain", size = rel(fontsize.cex), @@ -111,7 +126,7 @@ DC_theme_generator <- function(type, legend=T, ticks="out", x.axis.angle=0, hjus hjust = hjust, vjust = vjust, size = rel(fontsize.cex), - color="black", + color = "black", margin=unit(c(0.3,0.3,0.3,0.3), "cm")), legend.key = element_rect(fill=NA, colour = NA) @@ -126,16 +141,21 @@ DC_theme_generator <- function(type, legend=T, ticks="out", x.axis.angle=0, hjus panel.grid.major = element_blank(), panel.grid.minor = element_blank(), axis.ticks = element_line(colour = "black"), - text = element_text(family = fontfamily, - face = fontstyle), + text = element_text(family = fontfamily), + plot.title = element_text(family = fontfamily, + face="bold", + color = "black", + size = rel(fontsize.cex)), axis.ticks.length = unit(ifelse(ticks=="in",-0.2,0.2), "cm"), - axis.title = element_text(size=rel(fontsize.cex)), + axis.title = element_text(family = fontfamily, + face = ax.fontstyle, + size=rel(fontsize.cex)), axis.text.y = element_text(family = fontfamily, face = "plain", size = rel(fontsize.cex), - hjust=0.5, - angle=0, - color="black", + hjust = 0.5, + angle = 0, + color = "black", margin=unit(c(0.3,0.3,0.3,0.3), "cm")), axis.text.x = element_text(family = fontfamily, face = "plain", @@ -143,7 +163,7 @@ DC_theme_generator <- function(type, legend=T, ticks="out", x.axis.angle=0, hjus hjust = hjust, vjust = vjust, size = rel(fontsize.cex), - color="black", + color = "black", margin=unit(c(0.3,0.3,0.3,0.3), "cm")), legend.key = element_rect(fill=NA, colour = NA),