Statistics
| Branch: | Revision:

testing-framework / R / histogramm_markernummern.r @ 8526ae8c

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