library(ggplot2)
library(RColorBrewer)
library(tidyverse)
library(ggpubr)
library(ggsignif)
library(openxlsx)
library(viridis)
library(readxl)
setwd("//atlas.uni.lux/users/isabel.rosety/GBA/8-OH-dG ELISA/")
#data <- read.csv("WB data for Rstudio plots.csv", header = T, sep = ",")
data <- read_excel("//atlas.uni.lux/users/isabel.rosety/GBA/8-OH-dG ELISA/20220914_8OHdG_ELISA/20220914_8OHdG_ELISA.xlsx",sheet=2)
OutPath="//atlas.uni.lux/users/isabel.rosety/GBA/8-OH-dG ELISA"
#data <- read.xlsx("2022_ELISA.xlsx", sheet = 3)
data <- as.data.frame(data)
#data<- filter(data, CellLine !=c("WT_K7","GC_PD4","Mut_Ebisc")) #not worikng
Violin plots
data %>%
#pivot_longer(cols=feature_names, names_to = "feature", values_to = "value") %>%
#filter(feature %in% feature_names[i]) %>%
ggplot( aes(x=factor(Condition, level = c("CTRL", "GBA-PD")), y=ConcentrationNN)) +
#geom_violin( aes(fill=Condition),show.legend = T, trim=T),
geom_violin( aes(fill=Condition),show.legend = T,scale = "width", trim=F)+
geom_dotplot(binaxis = "y",stackdir = "center",dotsize=0.8)+
#scale_fill_manual(values= c("#bdd7e7","#2171b5"),name = "Condition", guide = "none")+
scale_fill_manual(values= alpha(c("#1565C0","#CC0000"),0.75),name = "Condition",guide = "none")+
labs(x ="",
y = "8-OHdG (ng/mL)",
fill = "Condition",
title = "") +
geom_signif(comparisons = list(c("CTRL", "GBA-PD")), test='wilcox.test', vjust=0.6, size=0.5, margin_top=0.5,
textsize=9, map_signif_level=c("***"=0.001, "**"=0.01, "*"=0.05, " "=2) ) +
#ggpubr::stat_compare_means(comparisons=my_comparisons, method="wilcox.test", p.adjust.method="BH",label="p.signif", label.x = 1.5)+
theme_bw() +
theme(
axis.line = element_line(colour = 'black', size = 0.5) ,
axis.title.x = element_blank(),
axis.text.x = element_text(size=12, color="black"),
axis.title.y = element_text(size = 12),
axis.text.y = element_text(size=10, color="black"),
axis.ticks.y = element_line(),
axis.ticks.length=unit(.25, "cm"),
#change legend text font size)
#legend.key.size = unit(0.7, "cm"),
#legend.key.width = unit(0.6,"cm"),
legend.key=element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
panel.border = element_blank(),
plot.title = element_text(size = 20, hjust=0.5, vjust= 1, face = "bold"),
plot.subtitle = element_blank(),#element_text(size = 2, hjust=0.5)
strip.text = element_text(size=12, vjust=0.5),
strip.background = element_rect(fill="lightgray"),
# panel.border = element_rect(fill = NA, color = "black"),
panel.spacing.y = unit(0.8, "lines"),
strip.switch.pad.wrap=unit(20, "lines"),
legend.position="right",
legend.text = element_text(size=17),
legend.title = element_text(size=19)
) -> p
t<- cowplot::ggdraw(cowplot::add_sub(p, "wilcox.test, ***p=0.001, **p=0.01, *p=0.05",hjust=-0.3, size=12))
Bin width defaults to 1/30 of the range of the data. Pick better value with `binwidth`.
print(p)

#ggsave(paste0(Sys.Date()," dOHG - Day30.pdf"), plot=p, height=2.5,width=3, path=OutPath)
LS0tDQp0aXRsZTogIlIgTm90ZWJvb2siDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQotLS0NCmBgYHtyfQ0KbGlicmFyeShnZ3Bsb3QyKQ0KbGlicmFyeShSQ29sb3JCcmV3ZXIpDQpsaWJyYXJ5KHRpZHl2ZXJzZSkNCmxpYnJhcnkoZ2dwdWJyKQ0KbGlicmFyeShnZ3NpZ25pZikNCmxpYnJhcnkob3Blbnhsc3gpDQpsaWJyYXJ5KHZpcmlkaXMpDQpsaWJyYXJ5KHJlYWR4bCkNCmBgYA0KDQpgYGB7cn0NCnNldHdkKCIvL2F0bGFzLnVuaS5sdXgvdXNlcnMvaXNhYmVsLnJvc2V0eS9HQkEvOC1PSC1kRyBFTElTQS8iKQ0KI2RhdGEgPC0gcmVhZC5jc3YoIldCIGRhdGEgZm9yIFJzdHVkaW8gcGxvdHMuY3N2IiwgaGVhZGVyID0gVCwgIHNlcCA9ICIsIikNCmRhdGEgIDwtIHJlYWRfZXhjZWwoIi8vYXRsYXMudW5pLmx1eC91c2Vycy9pc2FiZWwucm9zZXR5L0dCQS84LU9ILWRHIEVMSVNBLzIwMjIwOTE0XzhPSGRHX0VMSVNBLzIwMjIwOTE0XzhPSGRHX0VMSVNBLnhsc3giLHNoZWV0PTIpDQpPdXRQYXRoPSIvL2F0bGFzLnVuaS5sdXgvdXNlcnMvaXNhYmVsLnJvc2V0eS9HQkEvOC1PSC1kRyBFTElTQSINCg0KZGF0YSA8LSBhcy5kYXRhLmZyYW1lKGRhdGEpDQoNCmBgYA0KDQpWaW9saW4gcGxvdHMNCmBgYHtyfSANCg0KZGF0YSAlPiUNCiAgI3Bpdm90X2xvbmdlcihjb2xzPWZlYXR1cmVfbmFtZXMsIG5hbWVzX3RvID0gImZlYXR1cmUiLCB2YWx1ZXNfdG8gPSAidmFsdWUiKSAlPiUNCiAgI2ZpbHRlcihmZWF0dXJlICVpbiUgZmVhdHVyZV9uYW1lc1tpXSkgJT4lDQogIGdncGxvdCggYWVzKHg9ZmFjdG9yKENvbmRpdGlvbiwgbGV2ZWwgPSBjKCJDVFJMIiwgIkdCQS1QRCIpKSwgeT1Db25jZW50cmF0aW9uTk4pKSArDQogICNnZW9tX3Zpb2xpbiggYWVzKGZpbGw9Q29uZGl0aW9uKSxzaG93LmxlZ2VuZCA9IFQsIHRyaW09VCksDQogIGdlb21fdmlvbGluKCBhZXMoZmlsbD1Db25kaXRpb24pLHNob3cubGVnZW5kID0gVCxzY2FsZSA9ICJ3aWR0aCIsIHRyaW09RikrDQogIGdlb21fZG90cGxvdChiaW5heGlzID0gInkiLHN0YWNrZGlyID0gImNlbnRlciIsZG90c2l6ZT0wLjgpKw0KICAjc2NhbGVfZmlsbF9tYW51YWwodmFsdWVzPSBjKCIjYmRkN2U3IiwiIzIxNzFiNSIpLG5hbWUgPSAiQ29uZGl0aW9uIiwgZ3VpZGUgPSAibm9uZSIpKw0KICAgc2NhbGVfZmlsbF9tYW51YWwodmFsdWVzPSBhbHBoYShjKCIjMTU2NUMwIiwiI0NDMDAwMCIpLDAuNzUpLG5hbWUgPSAiQ29uZGl0aW9uIixndWlkZSA9ICJub25lIikrDQogICAgIGxhYnMoeCAgICAgPSIiLA0KICAgICAgICB5ICAgICA9ICI4LU9IZEcgKG5nL21MKSIsDQogICAgICAgZmlsbCAgPSAiQ29uZGl0aW9uIiwNCiAgICAgIHRpdGxlID0gIiIpICsNCiAgICBnZW9tX3NpZ25pZihjb21wYXJpc29ucyA9IGxpc3QoYygiQ1RSTCIsICJHQkEtUEQiKSksIHRlc3Q9J3dpbGNveC50ZXN0Jywgdmp1c3Q9MC42LCBzaXplPTAuNSwgbWFyZ2luX3RvcD0wLjUsIA0KICAgIHRleHRzaXplPTksIG1hcF9zaWduaWZfbGV2ZWw9YygiKioqIj0wLjAwMSwgIioqIj0wLjAxLCAiKiI9MC4wNSwgICIgIj0yKSApICsNCiAgICAjZ2dwdWJyOjpzdGF0X2NvbXBhcmVfbWVhbnMoY29tcGFyaXNvbnM9bXlfY29tcGFyaXNvbnMsIG1ldGhvZD0id2lsY294LnRlc3QiLCBwLmFkanVzdC5tZXRob2Q9IkJIIixsYWJlbD0icC5zaWduaWYiLCBsYWJlbC54ID0gMS41KSsNCiAgICB0aGVtZV9idygpICsNCiAgdGhlbWUoDQogICAgYXhpcy5saW5lID0gZWxlbWVudF9saW5lKGNvbG91ciA9ICdibGFjaycsIHNpemUgPSAwLjUpICwNCiAgICBheGlzLnRpdGxlLnggPSBlbGVtZW50X2JsYW5rKCksDQogICAgYXhpcy50ZXh0LnggPSBlbGVtZW50X3RleHQoc2l6ZT0xMiwgY29sb3I9ImJsYWNrIiksDQogICAgYXhpcy50aXRsZS55ID0gZWxlbWVudF90ZXh0KHNpemUgPSAxMiksDQogICAgYXhpcy50ZXh0LnkgPSBlbGVtZW50X3RleHQoc2l6ZT0xMCwgY29sb3I9ImJsYWNrIiksDQogICAgYXhpcy50aWNrcy55ID0gZWxlbWVudF9saW5lKCksDQogICAgYXhpcy50aWNrcy5sZW5ndGg9dW5pdCguMjUsICJjbSIpLA0KICAgICNjaGFuZ2UgbGVnZW5kIHRleHQgZm9udCBzaXplKQ0KICAgICNsZWdlbmQua2V5LnNpemUgPSB1bml0KDAuNywgImNtIiksDQogICAgI2xlZ2VuZC5rZXkud2lkdGggPSB1bml0KDAuNiwiY20iKSwNCiAgICBsZWdlbmQua2V5PWVsZW1lbnRfYmxhbmsoKSwNCiAgICBwYW5lbC5ncmlkLm1ham9yID0gZWxlbWVudF9ibGFuaygpLCANCiAgICBwYW5lbC5ncmlkLm1pbm9yID0gZWxlbWVudF9ibGFuaygpLA0KICAgIHBhbmVsLmJvcmRlciA9IGVsZW1lbnRfYmxhbmsoKSwNCiAgICBwbG90LnRpdGxlID0gZWxlbWVudF90ZXh0KHNpemUgPSAyMCwgaGp1c3Q9MC41LCB2anVzdD0gMSwgZmFjZSA9ICJib2xkIiksDQogICAgcGxvdC5zdWJ0aXRsZSA9IGVsZW1lbnRfYmxhbmsoKSwjZWxlbWVudF90ZXh0KHNpemUgPSAyLCBoanVzdD0wLjUpDQogICAgc3RyaXAudGV4dCA9IGVsZW1lbnRfdGV4dChzaXplPTEyLCB2anVzdD0wLjUpLA0KICAgIHN0cmlwLmJhY2tncm91bmQgPSBlbGVtZW50X3JlY3QoZmlsbD0ibGlnaHRncmF5IiksDQogICAjIHBhbmVsLmJvcmRlciA9IGVsZW1lbnRfcmVjdChmaWxsID0gTkEsIGNvbG9yID0gImJsYWNrIiksDQogICAgcGFuZWwuc3BhY2luZy55ID0gdW5pdCgwLjgsICJsaW5lcyIpLA0KICAgIHN0cmlwLnN3aXRjaC5wYWQud3JhcD11bml0KDIwLCAibGluZXMiKSwNCiAgICBsZWdlbmQucG9zaXRpb249InJpZ2h0IiwNCiAgICBsZWdlbmQudGV4dCA9IGVsZW1lbnRfdGV4dChzaXplPTE3KSwNCiAgICBsZWdlbmQudGl0bGUgPSBlbGVtZW50X3RleHQoc2l6ZT0xOSkNCiAgKSAtPiBwDQogIHQ8LSBjb3dwbG90OjpnZ2RyYXcoY293cGxvdDo6YWRkX3N1YihwLCAid2lsY294LnRlc3QsICoqKnA9MC4wMDEsICoqcD0wLjAxLCAqcD0wLjA1IixoanVzdD0tMC4zLCBzaXplPTEyKSkNCg0KICAgcHJpbnQocCkNCg0KI2dnc2F2ZShwYXN0ZTAoU3lzLkRhdGUoKSwiIGRPSEcgLSBEYXkzMC5wZGYiKSwgcGxvdD1wLCBoZWlnaHQ9Mi41LHdpZHRoPTMsIHBhdGg9T3V0UGF0aCkNCmBgYA0K