Подтвердить что ты не робот

Ggplot: удалить линии на краях ленты

Я использую ggplot для печати данных курса времени (пропорции фиксации с течением времени для разных объектов на экране) и хочу использовать ленту для отображения SE, но сама лента имеет линии в верхнем и нижнем краях, что делает чтение графика более сложным. Я не мог понять, как избавиться от этих краевых линий. Вот мой код:

ggplot(gaze, aes(Time, Fix, color=Object, fill=Object)) + 
    stat_summary(fun.y="mean", geom="line", size=2) + 
    stat_summary(fun.data="mean_se", geom="ribbon", alpha=.3)

Любые предложения?

Вот минимальный рабочий пример. Я сжал свои данные, чтобы:

   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"))

и вот новый код сюжета:

ggplot(d, aes(Time, y, color=Object, fill=Object)) + 
    geom_line(size=2) + 
    geom_ribbon(aes(ymin=lower, ymax=upper), alpha=.3)
4b9b3361

Ответ 1

Вы можете удалить границу с помощью аргумента 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)

Ответ 2

geom_ribbon понимает эстетику linetype. Просто дайте ему NA, например:

ggplot(d, aes(Time, y, color=Object, fill=Object)) + 
    geom_line(size=2) + 
    geom_ribbon(aes(ymin=lower, ymax=upper, linetype=NA), alpha=.3)

Дополнительная информация здесь: http://docs.ggplot2.org/current/geom_ribbon.html

Ответ 3

Здесь вы идете

ggplot(d, aes(Time, y,  fill=Object)) + 
  geom_line(size=2, aes(colour = Object)) + 
  geom_ribbon(aes(ymin=lower, ymax=upper), alpha=.3)