Frage

Ich bin ein R-Neuling und hatte eine Frage. Ich versuche, einen Text in ein R Grundstück zu platzieren. Hier einige Code, um die Helligkeit Datensatz im UsingR Paket.

    library(UsingR)
    brightness

    MyMean <- mean(brightness)
    MyMedian <- median(brightness)
    MySd <- sd(brightness)

    hist(brightness, breaks=35, main="This is a Histogram", 
         xlab="Brightness", ylab="Frequency", xlim=c(0,15), ylim=c(0, 200))

    text(3.5, 150, paste("Mean =", round(MyMean, 1), "\n Median =", 
         round(MyMedian, 1), "\n Std.Dev =", round(MySd, 1)))

Dieser Code erzeugt:

eingeben Bild Beschreibung hier

Das Problem mit dieser Ausgabe ist, dass der Text nicht links ist alligned links. Hat jemand wissen, wie der Text machen links alligned.

Danke.

War es hilfreich?

Lösung

Während Legende () natürlich geeignet für Legenden ist, gibt es eine allgemeine Lösung für den gesamten Text. Der Trick besteht darin, dass die Positions-Option setzt nicht nur die Position des Text relativ zum aktuellen Standort, aber es setzt auch die Begründung. Oben und Unten sind Zentrum gerechtfertigt. po 2 macht den Text rechtsbündig einstellen. Wenn es rechts von der Position (pos = 4), dann wird es linksbündig.

Ersetzen Sie Ihren Text Code mit ...

text(1.5, 150, paste("Mean =", round(MyMean, 1), "\nMedian =", 
         round(MyMedian, 1), "\nStd.Dev =", round(MySd, 1)), pos = 4)

für gerechtfertigt links und ...

text(5.0, 150, paste("Mean = ", round(MyMean, 1), "\nMedian = ", 
        round(MyMedian, 1), "\nStd.Dev = ", round(MySd, 1), sep = ''), pos = 2)

für Recht gerechtfertigt ist.

Andere Tipps

Versuchen Sie es mit legend() statt text()

legend(3.5, 150, legend = c(paste("Mean =", round(MyMean, 1)),
                            paste("Median =",round(MyMedian, 1)),
                            paste("Std.Dev =", round(MySd, 1))), 
                  bty = "n")

Sie müssen mit der Einstellung der Position spielen, um. Sie sollten erwägen nicht xy-Koordinaten überhaupt verwenden, aber diese beiden Argumente mit "topleft" ersetzen

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top