Index: /reasoner/measures/script.r
===================================================================
--- /reasoner/measures/script.r	(revision 242)
+++ /reasoner/measures/script.r	(revision 243)
@@ -147,43 +147,79 @@
 # URI as label (for interactive use ggplotly(tooltip=c("label")) after plot(gg)) and tags as values.
 # default settings can be changed through data$... or column names as strings
-my.createErrorBarDiagram = function(data, yCol, yColName, yBarCol, diagramTitle="", xCol="MODEL_COMPLEXITY", xColName="model complexity", labelCol="URI", colorCol="tag", colorLegendName="") {
+my.createErrorBarDiagram = function(data, yCol, yColName, yBarCol, diagramTitle="", xCol="MODEL_COMPLEXITY", xColName="model complexity", labelCol="URI", colorCol="tag", colorLegendName="", regression=TRUE, sizeFactor=5) {
   size <- length(data)
-  bar.width = size * 2 # unclear, with seems to be correlated to the size, stackoverflow.com/questions/19420903/wideth-of-error-bars-in-ggplot2
+  bar.width = size * sizeFactor # unclear, with seems to be correlated to the size, stackoverflow.com/questions/19420903/wideth-of-error-bars-in-ggplot2
   gg<-ggplot(data, aes(x=my.get(data, xCol),y=my.get(data, yCol),label=my.get(data, URI),color=my.get(data, tag))) + 
     geom_errorbar(aes(ymin=my.get(data, yCol)-my.get(data, yBarCol), ymax=my.get(data, yCol)+my.get(data, yBarCol)), width=bar.width) + 
     geom_point() +
     labs(x=xColName, y=yColName, title = diagramTitle, color=colorLegendName)
-  return(gg)
-}
+  if (regression) {
+    gg <- gg + geom_smooth(method=lm)
+  }
+  return (gg)
+}
+
+my.composeDiagramTitle = function(type, indicator) {
+  return (paste(type, " (", indicator, ")", sep=""))
+}
+
+my.composeFileName = function(dir, name, indicator) {
+  name <- paste(name, "_", indicator, ".pdf", sep="")
+  return (paste(dir, name, sep="/"))
+}
+
+my.createDiagrams = function(data, indicator) {
+  gg <- my.createErrorBarDiagram(
+    data, 
+    data$REASONER_REASONING_TIME.mean, 
+    "mean reasoning time", 
+    data$REASONER_REASONING_TIME.ci, 
+    diagramTitle=my.composeDiagramTitle("Reasoning Time", indicator))
+  ggsave(
+    filename=my.composeFileName("reasoningTime", indicator), 
+    plot=gg)
+  
+  gg <- my.createErrorBarDiagram(
+    data, 
+    data$REASONER_TRANSLATION_TIME.mean, 
+    "mean translation time", 
+    data$REASONER_TRANSLATION_TIME.ci, 
+    diagramTitle=my.composeDiagramTitle("Translation Time", indicator))
+  ggsave(
+    filename=my.composeFileName("translationTime", indicator), 
+    plot=gg)
+
+  gg <- my.createErrorBarDiagram(
+    data, 
+    data$REASONER_TRANSLATION_TIME.mean, 
+    "mean evaluation time", 
+    data$REASONER_TRANSLATION_TIME.ci, 
+    diagramTitle=my.composeDiagramTitle("Evaluation Time", indicator))
+  ggsave(
+    filename=my.composeFileName("evaluationTime", indicator), 
+    plot=gg)
+}
+
+dirs <- list.dirs(path="W:/offlineFiles/EASy-concepts/reasoner/measures", recursive=FALSE)
+for (d in dirs) {
+  if (!is.na(str_match(d, "benchmark-results.*"))) {
+    print(paste("processing folder ", d))
+    data <- my.readData(d, 1)
+    my.createDiagrams(data, 1)
+    data <- my.readData(d)
+    my.createDiagrams(data, "all")
+  }
+}
+
 
 #data <- my.readFile('W:/offlineFiles/EASy-concepts/reasoner/measures/new', 'measurements-sse.tsv')
-data <- my.readData('W:/offlineFiles/EASy-concepts/reasoner/measures/benchmark-results-new-1.3.0-20190215', 1)
-gg <- my.createErrorBarDiagram(data, data$REASONER_REASONING_TIME.mean, "mean reasoning time", data$REASONER_REASONING_TIME.ci, diagramTitle="Reasoning time")
-
-
-#library(data.table)
-#t[, print(.SD), list(URI)]
-#t1 <- t[,sapply(.SD,my.summary), list(URI, tag), .SDcols=c("RESPONSETIME_AUTO")]
-#t1 <- t[,sapply(.SD,my.summary), list(URI, tag), .SDcols=c("RESPONSETIME_AUTO", "REASONER_EVALUATION_TIME", "REASONER_INSTANCE_CREATION_TIME", "REASONER_REASONING_TIME", "REASONER_TRANSLATION_TIME")]
-
-#data <- my.readData('W:/offlineFiles/EASy-concepts/reasoner/measures/benchmark-results-new-1.3.0-20180826')
-
-
-#sse <- read.table(file = paste(folder, 'measurements-sse.tsv', sep='/'), sep = '\t', header = TRUE, dec=",")
-#rtvil <- read.table(file = paste(folder, 'measurements-rtvil.tsv', sep='/'), sep = '\t', header = TRUE, dec=",")
-#scenarios <- read.table(file = paste(folder, 'measurements-scenarios.tsv', sep='/'), sep = '\t', header = TRUE, dec=",")
-#scenarioVars <- read.table(file = paste(folder, 'measurements-scenarioVariants.tsv', sep='/'), sep = '\t', header = TRUE, dec=",")
-#scaleLog <- read.table(file = paste(folder, 'measurements-scaleLog.tsv', sep='/'), sep = '\t', header = TRUE, dec=",")
-
-#data <- rbind(sse, rtvil, scenarios, scenarioVars, scaleLog)
-#reasoning <- data[data$tag == "REASONING", ]
-
-#gg<-ggplot(data, aes(x=MODEL_CONSTRAINT_COMPLEXITY,y=REASONER_REASONING_TIME,label=model.name,color=tag))+geom_point()
-#gg<-ggplot(data, aes(x=MODEL_CONSTRAINT_COMPLEXITY+MODEL_VARIABLES,y=REASONER_REASONING_TIME,label=caller,color=tag))+geom_point()
-#gg<-ggplot(data, aes(x=MODEL_COMPLEXITY,y=REASONER_REASONING_TIME,label=model.name,color=tag))+geom_point()
-#plot(gg)
+#data <- my.readData('W:/offlineFiles/EASy-concepts/reasoner/measures/benchmark-results-new-1.3.0-20190215', 1)
+#gg <- my.createErrorBarDiagram(data, data$REASONER_REASONING_TIME.mean, "mean reasoning time", data$REASONER_REASONING_TIME.ci, diagramTitle="Reasoning time")
+#ggplotly(tooltip=c("label"))
+
 
 #gg<-ggplot(data, aes(x=MODEL_COMPLEXITY,y=REASONER_REASONING_TIME.mean,label=URI,color=tag)) + 
 #  geom_errorbar(aes(ymin=REASONER_REASONING_TIME.mean-REASONER_REASONING_TIME.ci, ymax=REASONER_REASONING_TIME.mean+REASONER_REASONING_TIME.ci), size=1, width=50) + 
+#  geom_smooth(method=lm, data=data) +
 #  geom_point()
 #ggplotly(tooltip=c("label"))
