Ich habe eine Frage zu Referenzklassen. Meine Frage steht im Kontext eines von mir entwickelten R-Pakets rCharts. Es verwendet Referenzklassen, um interaktive Plots von R zu erstellen.Kann eine Referenzklasse zu Protokollaufrufen erstellt werden
Das Erstellen eines Plots beinhaltet eine Reihe von Aufrufen. Hier ist ein Beispiel, wo zuerst ein Streudiagramm erstellt wird und dann ein Liniendiagramm hinzugefügt wird.
p1 <- rPlot(mpg ~ cyl, data = mtcars, type = 'point')
p1$layer(copy_layer = T, type = 'line')
Da nun eine Referenzklasse wie ein Verschluss ist, dass ich mich gefragt, ob es möglich war, machte die Anrufe zu protokollieren. Die Idee ist, dass wenn ich die Reihenfolge der Aufrufe protokollieren kann, kann ich automatisch den Quellcode, der zum Erstellen einer Visualisierung verwendet wird, zusammen mit dem HTML einfügen.
Ich habe versucht zu sehen, ob ich sys.function
oder match.call
verwenden könnte, aber komme nicht überall hin. Wenn mir jemand zeigen kann, wie ich mich diesem Thema nähern kann, wäre das sehr zu begrüßen.
Die Lösung sollte fair sein: in jeder Methode benötigen Sie etwas wie 'Anrufe << - c (Anrufe, Liste (match.call()))' – hadley
Danke, das hat super funktioniert! Vielleicht sollte ich dies als eine andere Frage posten, aber was ist die empfohlene Methode, um eine Liste von Anrufen erneut auszuführen. – Ramnath
Nur 'eval()' sie - aber wenn Sie das tun möchten, müssen Sie auch die Umgebung erfassen, in der sie mit 'parent.frame()' – hadley