Wie erstelle ich ein ggplot2-Konturdiagramm analog zu gitter: filled.contour ()?

Ich habe ggplot2 gelernt und hoffe, es für alle meine R-Grafiken verwenden zu können. Ich habe jedoch noch keine Möglichkeit gefunden, ein Konturdiagramm zu erstellen, das einem herkömmlichen Konturdiagramm ähnelt, wie das, was mit lattice: filled.contour () erhalten werden kann. Beispielsweise

#define data
x<-seq(1,11,1)
y<-seq(1,11,1)
xyz.func<-function(x,y) {-10.4+6.53*x+6.53*y-0.167*x^2-0.167*y^2+0.0500*x*y}

#contour plot using lattice graphics and R Color Brewer
library(lattice) #for filled.contour()
library(RColorBrewer) #for brewer.pal()
z.lattice<-outer(x,y,xyz.func)
filled.contour(x,y,z.lattice,nlevels=6,col=brewer.pal(6,"YlOrRd"))

Dies gibt mir eine schöne Konturdarstellung.

Now, lass uns das Gleiche in ggplot2 versuchen. Das Beste, was ich finden kann, basierend auf allem, was ich gelesen habe (insbesondereZeichnen von Beschriftungen auf flachen Abschnitten von Konturlinien in ggplot2) ist:

#contour plot using ggplot2
library(ggplot2)
library(reshape2) #for melt()
z.molten<-melt(z.lattice) 
names(z.molten) <- c("x", "y", "z")
v<-ggplot(z.molten, aes(x,y,z=z))+
    geom_tile(aes(fill=z))+
    stat_contour(bins=6,aes(x,y,z=z), color="black", size=0.6)+
    scale_fill_gradientn(colours=brewer.pal(6,"YlOrRd"))
v

Dieses Diagramm hat die gleiche Grundidee wie filled.contour (), aber die farbigen Kacheln passen sich nicht sehr gut an die Konturen an.

Ich war auch nicht erfolgreich beim Ändern der Größe der Kacheln.

Haben Sie Vorschläge, wie Sie die Ausgabe von ggplot2 näher an die Ausgabe von filled.contour () bringen können?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage