diff --git a/DC_theme_generator.R b/DC_theme_generator.R new file mode 100644 index 0000000000000000000000000000000000000000..0bcfa73f4d2cda26d3beb52b1b81376ecc35e7aa --- /dev/null +++ b/DC_theme_generator.R @@ -0,0 +1,129 @@ +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"){ + + ## Options: + # type: 'L', 'square' + # ticks: 'in', 'out' + # fontfamily: 'serif' , 'sans' , 'mono' + + ticks <- tolower(ticks) + fontfamily <- tolower(fontfamily) + + if( type == "square"){ + if( legend ){ + # Type: square , with legend" + themeToReturn <- ggplot2::theme( + panel.border = element_rect(linetype = 1, + colour = "black", + fill=NA, + size=1), + panel.background=element_blank(), + panel.grid.major=element_line(color=NA), + axis.ticks = element_line(colour = "black"), + text = element_text(family = fontfamily), + axis.ticks.length = unit(ifelse(ticks=="in",-0.2,0.2),"cm"), + axis.title = element_text(size=rel(fontsize.cex)), + axis.text.y = element_text(size = rel(fontsize.cex), + hjust = 0.5, + angle = 0, + color="black", + margin=unit(c(0.3,0.3,0.3,0.3), "cm")), + axis.text.x = element_text(angle = x.axis.angle, + hjust = hjust, + vjust = vjust, + size = rel(fontsize.cex), + color="black", + margin=unit(c(0.3,0.3,0.3,0.3), "cm")), + legend.key= element_rect(fill=NA, + colour = NA) + ) + }else{ + # Type: square , without legend" + themeToReturn <- ggplot2::theme( + panel.border = element_rect(linetype = 1, + colour = "black", + fill=NA, + size=1), + panel.background=element_blank(), + panel.grid.major=element_line(color=NA), + axis.ticks = element_line(colour = "black"), + text = element_text(family = fontfamily), + axis.ticks.length = unit(ifelse(ticks=="in",-0.2,0.2),"cm"), + axis.title = element_text(size=rel(fontsize.cex)), + axis.text.y = element_text(size = rel(fontsize.cex), + hjust = 0.5, + angle = 0, + color="black", + margin=unit(c(0.3,0.3,0.3,0.3), "cm")), + axis.text.x = element_text(angle = x.axis.angle, + hjust = hjust, + vjust = vjust, + size = rel(fontsize.cex), + color="black", + margin=unit(c(0.3,0.3,0.3,0.3), "cm")), + legend.key= element_rect(fill=NA, + colour = NA), + legend.position="none" + ) + } + } + + if( type == 'L' ){ + if( legend ){ + # Type: L , with legend" + themeToReturn <- ggplot2::theme( + axis.line = element_line(colour = "black", + size=0.5), + panel.border = element_blank(), + panel.background = element_blank(), + panel.grid.major = element_blank(), + panel.grid.minor = element_blank(), + axis.ticks = element_line(colour = "black"), + text = element_text(family = fontfamily), + axis.ticks.length = unit(ifelse(ticks=="in",-0.2,0.2), "cm"), + axis.title = element_text(size=rel(fontsize.cex)), + axis.text.y = element_text(size = rel(fontsize.cex), + hjust = 0.5, + angle = 0, + color="black", + margin=unit(c(0.3,0.3,0.3,0.3), "cm")), + axis.text.x = element_text(angle = x.axis.angle, + hjust = hjust, + vjust = vjust, + size = rel(fontsize.cex), + color="black", + margin=unit(c(0.3,0.3,0.3,0.3), "cm")), + legend.key = element_rect(fill=NA, + colour = NA) + ) + } else { + # Type: L , without legend + themeToReturn <- ggplot2::theme( + axis.line = element_line(colour = "black", + size=0.5), + panel.border = element_blank(), + panel.background = element_blank(), + panel.grid.major = element_blank(), + panel.grid.minor = element_blank(), + axis.ticks = element_line(colour = "black"), + text = element_text(family = fontfamily), + axis.ticks.length = unit(ifelse(ticks=="in",-0.2,0.2), "cm"), + axis.title = element_text(size=rel(fontsize.cex)), + axis.text.y = element_text(size = rel(fontsize.cex), + hjust=0.5, + angle=0, + color="black", + margin=unit(c(0.3,0.3,0.3,0.3), "cm")), + axis.text.x = element_text(angle = x.axis.angle, + hjust = hjust, + vjust = vjust, + size = rel(fontsize.cex), + color="black", + margin=unit(c(0.3,0.3,0.3,0.3), "cm")), + legend.key = element_rect(fill=NA, + colour = NA), + legend.position="none" + ) + } + } + return(themeToReturn) +} \ No newline at end of file diff --git a/theme_dc.plot.L.45.nolegend.R b/theme_dc.plot.L.45.nolegend.R index b6476c4bba6dad45f9cc5e10a307fb819e6523c6..a88ca882bd9883ded380c74bf85012584d67504d 100644 --- a/theme_dc.plot.L.45.nolegend.R +++ b/theme_dc.plot.L.45.nolegend.R @@ -1 +1,26 @@ -theme_dc.plot.L.45.nolegend=theme(axis.line = element_line(colour = "black",size=0.5),panel.border = element_blank(),panel.background=element_blank(),panel.grid.major=element_blank(),panel.grid.minor =element_blank(),axis.text.y= element_text(size = rel(1.5),color="black",margin=unit(c(0.3,0.3,0.3,0.3), "cm"),hjust=0.5,angle=0),legend.key= element_rect(fill=NA,colour = NA),legend.position="none", axis.ticks =element_line(colour = "black"),axis.text.x = element_text(angle = 45,hjust = 1,size = rel(1.5),color="black",margin=unit(c(0.3,0.3,0.3,0.3), "cm")),text=element_text(family="serif"),axis.ticks.length =unit(0.2, "cm"),axis.title = element_text(size=rel(1.5))) \ No newline at end of file +library(ggplot2) +theme_dc.plot.L.45.nolegend=theme( + axis.line = element_line(colour = "black", + size=0.5), + panel.border = element_blank(), + panel.background=element_blank(), + panel.grid.major=element_blank(), + panel.grid.minor =element_blank(), + axis.text.y= element_text(size = rel(1.5), + color="black", + margin=unit(c(0.3,0.3,0.3,0.3), "cm"), + hjust=0.5, + angle=0), + legend.key= element_rect(fill=NA, + colour = NA), + legend.position="none", + axis.ticks = element_line(colour = "black"), + axis.text.x = element_text(angle = 45, + hjust = 1, + size = rel(1.5), + color="black", + margin=unit(c(0.3,0.3,0.3,0.3), "cm")), + text=element_text(family="serif"), + axis.ticks.length =unit(0.2, "cm"), + axis.title = element_text(size=rel(1.5)) + )