Bei der Erstellung von mehrschichtigen Plots sollte das ggplotPaket berücksichtigt werden. Die Idee ist, ein grafisches Objekt mit grundlegender Ästhetik zu erstellen und es schrittweise zu verbessern.
ggplotFür den Stil müssen Daten gepackt werden data.frame.
# Data generation
x <- seq(-2, 2, 0.05)
y1 <- pnorm(x)
y2 <- pnorm(x,1,1)
df <- data.frame(x,y1,y2)
Grundlösung:
require(ggplot2)
ggplot(df, aes(x)) + # basic graphical object
geom_line(aes(y=y1), colour="red") + # first layer
geom_line(aes(y=y2), colour="green") # second layer
Hier + operatorwerden zusätzliche Ebenen zum Basisobjekt hinzugefügt.
Mit haben ggplotSie Zugriff auf grafische Objekte in jeder Phase des Zeichnens. Angenommen, die übliche schrittweise Einrichtung kann folgendermaßen aussehen:
g <- ggplot(df, aes(x))
g <- g + geom_line(aes(y=y1), colour="red")
g <- g + geom_line(aes(y=y2), colour="green")
g
gErzeugt das Diagramm und Sie können es in jeder Phase sehen (also nach dem Erstellen mindestens einer Ebene). Weitere Verzauberungen des Plots werden ebenfalls mit dem erstellten Objekt vorgenommen. Zum Beispiel können wir Beschriftungen für Achsen hinzufügen:
g <- g + ylab("Y") + xlab("X")
g
Das Finale gsieht aus wie:

UPDATE (08.11.2013):
Wie in den Kommentaren erwähnt, ggplotschlägt die Philosophie vor, Daten im Langformat zu verwenden. Sie können sich auf diese Antwort beziehen, um den entsprechenden Code anzuzeigen.
?curve. Verwenden Sieadd=TRUE.