J'utilise ggplot
pour tracer les données d'évolution du temps (proportions de fixation au fil du temps pour différents objets à l'écran) et je souhaite utiliser un ruban pour montrer le SE, mais le ruban lui-même a des lignes sur les bords supérieur et inférieur, ce qui rend la lecture du graphique un peu plus difficile. Je n'ai pas pu comprendre comment me débarrasser de ces lignes Edge. Voici mon code de tracé:
ggplot(d, aes(Time, y, color = Object, fill = Object)) +
stat_summary(fun.y = "mean", geom = "line", size = 2) +
stat_summary(fun.data = "mean_se", geom = "ribbon", alpha = .3)
Aucune suggestion?
Voici un exemple de travail minimal. J'ai compressé mes données sur:
Time Object y lower upper
1 1000 C 0.12453389 0.04510504 0.2039627
2 1000 T 0.58826856 0.37615078 0.8003864
3 1000 U 0.09437160 0.03278069 0.1559625
4 1100 C 0.12140127 0.03943988 0.2033627
5 1100 T 0.64560823 0.44898727 0.8422292
6 1100 U 0.06725172 0.01584248 0.1186610
d <- structure(list(Time = c(1000L, 1000L, 1000L, 1100L, 1100L, 1100L), Object = structure(c(1L, 2L, 3L, 1L, 2L, 3L), .Label = c("C",
"T", "U"), class = "factor"), y = c(0.12453389, 0.58826856, 0.0943716,
0.12140127, 0.64560823, 0.06725172), lower = c(0.04510504, 0.37615078,
0.03278069, 0.03943988, 0.44898727, 0.01584248), upper = c(0.2039627,
0.8003864, 0.1559625, 0.2033627, 0.8422292, 0.118661)), .Names = c("Time",
"Object", "y", "lower", "upper"), class = "data.frame", row.names = c("1",
"2", "3", "4", "5", "6"))
et voici le nouveau code de tracé:
ggplot(d, aes(Time, y, color = Object, fill = Object)) +
geom_line(size = 2) +
geom_ribbon(aes(ymin = lower, ymax = upper), alpha = .3)
Vous pouvez supprimer la bordure en utilisant l'argument colour
:
ggplot(d, aes(Time, y, color = Object, fill = Object)) +
geom_line(size = 2) +
geom_ribbon(aes(ymin = lower, ymax = upper), alpha = .3, colour = NA)
geom_ribbon
Comprend linetype
l'esthétique. Si vous voulez mapper le type de ligne à une variable, incluez-le dans l'argument aes()
, sinon, placez linetype
à l'extérieur et donnez-le simplement 0
, Comme ceci:
ggplot(d, aes(Time, y, color = Object, fill = Object)) +
geom_line(size = 2) +
geom_ribbon(aes(ymin = lower, ymax = upper), linetype = 0, alpha = .3)
Plus d'informations ici: http://docs.ggplot2.org/current/geom_ribbon.html
Voici
ggplot(d, aes(Time, y, fill=Object)) +
geom_line(size=2, aes(colour = Object)) +
geom_ribbon(aes(ymin=lower, ymax=upper), alpha=.3)