testing-framework / R / histogramm_markernummern.r @ 17a68f48
History | View | Annotate | Download (1.892 KB)
1 | 8526ae8c | Jonas Diekmann | #!/usr/bin/env Rscript |
---|---|---|---|
2 | #Dieses Skript erzeugt ein Histogramm, das die Erkennungen über den Nummern der Marker aufträgt. |
||
3 | |||
4 | #Argumente einlesen |
||
5 | args <- commandArgs(TRUE) |
||
6 | if(length(args) == 3){ |
||
7 | cat("dateiname=\"",args[1],"\"\n",sep="") |
||
8 | cat("vergleichsdatei=\"",args[2],"\"\n",sep="") |
||
9 | cat("basisname=\"",args[3],"\"\n",sep="") |
||
10 | dateiname <- args[1] |
||
11 | vergleichsdatei <- args[2] |
||
12 | basisname <- args[3] |
||
13 | }else |
||
14 | { |
||
15 | cat("Fehler: Bitte zwei Eingabedateinamen und einen Basisnamen für die Ausgabedateien angeben!","\n") |
||
16 | quit() |
||
17 | } |
||
18 | |||
19 | ##Hilsfunktionen## |
||
20 | |||
21 | #Extrahiert die Markerid aus einer Gruppierung |
||
22 | extrahiereMid <- function(gruppierung){ |
||
23 | return(gruppierung$V2[1]) |
||
24 | } |
||
25 | |||
26 | #Gruppiert den übergebenen Datensatz anhand der Markerids und bestimmt die Anzahl der Erkennungen jedes Markers |
||
27 | gruppierenUndZusammenfassen <- function(datensatz){ |
||
28 | gruppiert <- split(datensatz,datensatz$V2) |
||
29 | markerids <- unlist(lapply(gruppiert,extrahiereMid)) |
||
30 | zahlDerErkennungen <- unlist(lapply(gruppiert,nrow)) |
||
31 | frame <- data.frame(Markerid=markerids,Erkennungen=zahlDerErkennungen) |
||
32 | return(frame) |
||
33 | } |
||
34 | |||
35 | #Plottet ein Histogramm aus den übergebenen Daten und speichert es als SVG |
||
36 | histogrammPlotten <- function(frame,dateiname,bibliotheksbez){ |
||
37 | # Datei öffnen |
||
38 | svg(filename=paste("markernummernhist_",bibliotheksbez,"_",dateiname,".svg",sep="")) |
||
39 | # Plotten |
||
40 | plot(frame,t="h") |
||
41 | # Datei schreiben |
||
42 | dev.off() |
||
43 | } |
||
44 | |||
45 | ##Hauptprogramm## |
||
46 | |||
47 | #Einlesen der Datensätze |
||
48 | source("./share/hauptdatensaetze_laden.r") |
||
49 | |||
50 | #Gruppieren und Zusammenfassen |
||
51 | frameBart <- gruppierenUndZusammenfassen(bart) |
||
52 | frameAlvar <- gruppierenUndZusammenfassen(alvar) |
||
53 | frameAruco <- gruppierenUndZusammenfassen(aruco) |
||
54 | frameBlender <- gruppierenUndZusammenfassen(blender) |
||
55 | |||
56 | histogrammPlotten(frameBart,dateiname,"bart") |
||
57 | histogrammPlotten(frameAlvar,dateiname,"alvar") |
||
58 | histogrammPlotten(frameAruco,dateiname,"aruco") |
||
59 | histogrammPlotten(frameBlender,dateiname,"vergleichsdaten") |
||
60 | |||
61 | return(0) |
||
62 | |||
63 | |||
64 | |||
65 |