2016-08-11 1 views
1

Ich möchte zwei horizontale Linien mit geom_hline in ggplot einschließen. Die Skala in meinem Graph läuft von 0 bis 20.000 und ich hätte gerne einzelne Zeilen bei 400 und 17.000.Mehrere geom_hline in ggplot

?geom_hline gibt Beispiele für einzelne Zeilen (geom_hline(yintercept = 20)) und für mehrere Zeilen ((geom_hline(yintercept = 1:5)). Aber das Letztere wird an jedem Punkt zwischen den beiden Zahlen eine Linie geben.

So erstellt geom_hline(yintercept = 400: 17000) Zeilen mit Abschnitten bei 400, 401, 402 etc. Und geom_hline(yintercept = 400, 17000) produziert nur eine einzige Zeile für die erste Nummer. Ich bin sicher, dass es etwas abgesehen von : und , Ich muss versuchen, hat jemand irgendwelche Vorschläge?

+2

willst du 'geom_line (yintercept = c (400, 17000))'? –

+0

Hallo @RichardTelford, ich habe versucht, Ihren Vorschlag hinzuzufügen, aber ich bekomme 'Fehler: Unbekannte Parameter: Yintercept' und keine Linien überhaupt. – EcologyTom

+1

nicht vergessen, die h ?! Versuchen Sie geom_hline (yintercept = c (400,17000))? –

Antwort

1

Ich habe einige zufällige Daten simuliert und zeichne sie als Linie. Es funktioniert gut. Sind Ihre Daten in einer data.frame?

Funktioniert der folgende Code für Sie?

x <- rnorm(500) 
d <- data.frame("x" = x, "den" = dnorm(x)) 
ggplot(d, aes(x, den)) + geom_line() + geom_hline(yintercept = c(0.1,0.2)) 
+1

Um die Vorschläge und Antworten von @Jan und @Richard zu ergänzen, wurde 'geom_hline (yintercept = c (LOWER.LINE, UPPER.LINE))' gelöst mein Problem. Danke für die Hilfe! – EcologyTom

+0

Sie sind mehr als willkommen. Viel Glück mit deiner Arbeit –

Verwandte Themen