Ich habe folgende Datenrahmen df
:Wie wird die Standardabweichung als Form angezeigt?
structure(list(queue = structure(c(1L, 1L, 1L, 1L, 1L, 1L), .Label = c("XXX1",
"XXX2", "XXX3", "XXX4",
"XXX5", "XXX6", "XXX7",
"XXX8", "XXX9", "XXX10"), class = "factor"),
hour = c(8, 9, 10, 11, 12, 13), num_at = c(5, 10.6923076923077,
8.35294117647059, 7.74285714285714, 10.0769230769231, 9.34615384615385
), num_wt = c(1.8, 8.28571428571429, 11.3478260869565, 11.2121212121212,
17.5185185185185, 6.68421052631579),num_wt_se = c(0.8, 0.25, 1.3, 1.4,
1.5, 2.6),num_at_se = c(1.2, 1.2, 1.3, 1.2,
1.1, 2.3)), .Names = c("queue",
"hour", "num_at", "num_wt","num_at_se","num_wt_se"), row.names = c(NA, 6L), class = "data.frame")
ich ein Diagramm mit zwei Linienkurven erstellt, entspricht der 1. bis num_wt
, während die zweite entspricht num_at
Werte.
library("dplyr")
library("tidyr")
library("ggplot2")
p <- df[df$queue == "XXX1",] %>%
gather(key, num, num_wt, num_at) %>%
ggplot(aes(x=hour, y=num, colour=key)) +
geom_smooth(span = 0.3) +
scale_color_manual(labels = c("Line 1", "Line 2"), values = c("#F8AA5A", "#BD63BD")) +
labs(title = "Title",
x = "Hour",
y = "Value",
color = "")
p
Jetzt möchte ich für num_wt
und num_at
die Standardabweichung zeigen, die entsprechend in num_wt_se
und num_at_se
, gespeichert wird. Ich möchte die Standardabweichung als eine Form darstellen, nicht als Linien. Wie kann ich es tun? Ich googeln für eine mögliche Lösung und dieses hier gefunden, aber es ist nichts in meinem Fall zeigt:
stat_smooth(method="loess", span=0.1, se=TRUE, aes(fill=key), alpha=0.3) +
meinst du 'geom_violin()'? – roman
@roman: Es sieht so aus. Aber wie definiert man es für +/- "num_at_se" und +/- "num_wt_se" auf demselben Diagramm? – FiofanS