Erstellen einer facet_wrap Grundstück mit ggplot2 mit verschiedenen Anmerkungen in jeder Parzelle

Ich bin mit ggplot2 zu erforschen, das Ergebnis von Tests, die auf einem Agenten-basierten Modell. Das Modell kann am Ende in einer von drei Runden pro Realisierung, und als solcher interessiert mich, wie sich Spieler Dienstprogramme unterscheiden sich in Bezug auf das, was Runde endet das Spiel und Ihre relative position im 2D-Raum.

All dies ist zu sagen, dass ich generierte einen facet_wrap plot zeigen, dass dies für jede Runde, aber ich möchte auch zu kommentieren, die jede Handlung mit der cor(x,y) für die Teilmenge der Daten, dargestellt in jeder Facette. Gibt es eine Möglichkeit zu sagen, ggplot2, dass ich möchte, dass die annotation zu verwenden, die Teilmenge von Daten, erzeugt durch facet_wrap? Hier ist der code, den ich habe, so weit, und was es produziert

library(ggplot2)

# Load data
abm.data<-read.csv("ABM_results.csv")

# Create new colun for area of Pareto set
attach(abm.data)
area<-abs(((x3*(y2-y1))+(x2*(y1-y3))+(x1*(y3-y2)))/2)
abm.data<-transform(abm.data,area=area)
detach(abm.data)

# Compare area of Pareto set with player utility
png("area_p1.png",res=100,pointsize=20,height=500,width=1600)
area.p1<-ggplot(abm.data,aes(x=area))+geom_point(aes(y=U1_2,colour="Player 1",alpha=0.4))+facet_wrap(~round,ncol=3)+
    annotate("text",0.375,-1.25,label=paste("rho=",round(cor(abm.data$area,abm.data$U1_2),2)), parse=TRUE)+
    scale_colour_manual(values=c("Player 1"="red"))
area.p1+xlab("Area of Pareto Set")+ylab("Player Utility at Game End")+
    opts(title="Final Player 1 Utility by Pareto Set Size and Round Game Ends",legend.position="none")
dev.off()

Erstellen einer facet_wrap Grundstück mit ggplot2 mit verschiedenen Anmerkungen in jeder Parzelle

(Quelle: drewconway.com)

Wie Sie sehen können, gibt es zwei Probleme:

  1. Die \rho-Wert ist der vollständige Datensatz, anstatt den Untergruppen von 'rund'. Gibt es eine Möglichkeit, um die cor(x,y) zu drucken basierend auf den Daten, die in jedem plot?
  2. Die Anmerkung Lesen sollten "\rho=some_value" aber stattdessen bekomme ich "=(\rho,Wert); gibt es eine Möglichkeit, dieses Problem zu beheben?
InformationsquelleAutor DrewConway | 2010-01-12
Schreibe einen Kommentar