Ich habe ein paar Stunden zwischen geom_polygon & geom_ribbon versucht und ich kann es einfach nicht funktionieren. Ich schaue, um den Bereich zwischen den zwei Linien zu schattieren (Ich recherchierte es ziemlich viel). Sehen Sie, beide Achsen des Graphen sind numerisch und die zwei Linien teilen die gleiche Y-Achse, deshalb kann ich es nicht zur Berechnung von ymin noch bekommen ymax. Irgendwelche Ideen Jungs? Ich würde es sehr schätzen. Hier ist mein Code:Wie schattiere ich zwischen Zeilen mit identischen "y" s?
ggplot(npsmelt,aes(Score,Unresolved)) +
geom_line(aes(linetype=Metric, color=Metric)) +
theme(legend.position="top", legend.title = element_blank()) +
geom_point(aes(color=Metric)) +
theme(plot.caption=element_text(size=8, margin=margin(t=10))) +
scale_x_continuous(breaks=seq(54,70,1)) +
geom_ribbon(data=subset(npsmelt,
Score[Metric=="Old.NPS"]<Score[Metric=="New.NPS"]),
aes(ymin =0, ymax =..y..), alpha=0.10)
Das resultierende Diagramm:
Meine Daten:
Unresolved Metric Score
5 New.NPS 66.48
6 New.NPS 65.32
7 New.NPS 64.16
8 New.NPS 63
9 New.NPS 61.84
10 New.NPS 60.68
5 Old.NPS 68.5
6 Old.NPS 62.28
7 Old.NPS 61.74
8 Old.NPS 61.41
9 Old.NPS 61.67
10 Old.NPS 60.42
dput
:
structure(list(Unresolved = c(5L, 6L, 7L, 8L, 9L, 10L, 5L, 6L,
7L, 8L, 9L, 10L), Metric = c("New.NPS", "New.NPS", "New.NPS",
"New.NPS", "New.NPS", "New.NPS", "Old.NPS", "Old.NPS", "Old.NPS",
"Old.NPS", "Old.NPS", "Old.NPS"), Score = c(66.48, 65.32, 64.16,
63, 61.84, 60.68, 68.5, 62.28, 61.74, 61.41, 61.67, 60.42)), .Names = c("Unresolved",
"Metric", "Score"), row.names = c(NA, -12L), class = "data.frame")
könnten Sie bitte 'dput()' Ihre Daten? –