zwei-Wege-density-plot kombiniert mit der einen density plot mit ausgewählten Regionen in r

# data 
set.seed (123)
xvar <- c(rnorm (1000, 50, 30), rnorm (1000, 40, 10), rnorm (1000, 70, 10))
yvar <-   xvar + rnorm (length (xvar), 0, 20)
myd <- data.frame (xvar, yvar)


# density plot for xvar
            upperp = 80   # upper cutoff
            lowerp = 30   # lower cutoff
            x <- myd$xvar
            plot(density(x))
            dens <- density(x)
            x11 <- min(which(dens$x <= lowerp))
            x12 <- max(which(dens$x <= lowerp))
            x21 <- min(which(dens$x > upperp))
            x22 <- max(which(dens$x > upperp))
            with(dens, polygon(x = c(x[c(x11, x11:x12, x12)]),
                y = c(0, y[x11:x12], 0), col = "green"))
             with(dens, polygon(x = c(x[c(x21, x21:x22, x22)]),
                y = c(0, y[x21:x22], 0), col = "red"))
            abline(v = c(mean(x)), lwd = 2, lty = 2, col = "red")
# density plot with yvar
    upperp = 70  # upper cutoff
    lowerp = 30   # lower cutoff
    x <- myd$yvar
    plot(density(x))
    dens <- density(x)
    x11 <- min(which(dens$x <= lowerp))
    x12 <- max(which(dens$x <= lowerp))
    x21 <- min(which(dens$x > upperp))
    x22 <- max(which(dens$x > upperp))
    with(dens, polygon(x = c(x[c(x11, x11:x12, x12)]),
        y = c(0, y[x11:x12], 0), col = "green"))
     with(dens, polygon(x = c(x[c(x21, x21:x22, x22)]),
        y = c(0, y[x21:x22], 0), col = "red"))
    abline(v = c(mean(x)), lwd = 2, lty = 2, col = "red")

Muss ich zum Plotten zwei-Wege-density-plot, ich bin nicht sicher, es gibt besseren Weg, als den folgenden:

ggplot(myd,aes(x=xvar,y=yvar))+
    stat_density2d(aes(fill=..level..), geom="polygon") +
    scale_fill_gradient(low="blue", high="green") + theme_bw()

Möchte ich kombinieren alle drei Arten in eine (ich weiss nicht, ob ich es schaffen kann zwei-Wege-plot in ggplot), es ist nicht prefrence auf, ob die Lösung die Grundstücke sind in ggplot-oder base oder gemischt. Ich hoffe, das ist machbar Projekt, wenn man bedenkt Robustheit von R. ich persönlich bevorzuge ggplot2.

zwei-Wege-density-plot kombiniert mit der einen density plot mit ausgewählten Regionen in r

Hinweis: die untere Schattierung in diesem plot ist nicht rechts, rot sollte immer die unteren und oberen grünen in xvar und yvar Graphen, entsprechend den schattierten region in der xy-density-plot.

Edit: Ultimate Erwartung auf die Grafik (Dank seth und jon für sehr nahe Antwort)
(1) das entfernen Platz und hilfsstrichbeschriftungen, etc machen es kompakt

(2) Ausrichtungen der Netze, so dass Mitte plot ticks und raster ausrichten soll mit Seite ticks und labels und die Größe der Parzellen gleich Aussehen.
zwei-Wege-density-plot kombiniert mit der einen density plot mit ausgewählten Regionen in r

  • Eine Antwort hier kann helfen, mit der immer dichten mit ggplot stackoverflow.com/questions/8545035/...
  • Ihre Frage ist sehr inspirierend und ich Frage mich, wenn Sie könnten die letzten codes, die in der Lage sind, um eine Darstellung der Abbildung in deinem post? Vielen Dank.
InformationsquelleAutor SHRram | 2012-07-18
Schreibe einen Kommentar