Как нарисовать верхнюю и нижнюю линии сглаживания - PullRequest
0 голосов
/ 23 мая 2018

У меня есть график с двумя лессовыми линиями (с разным пролетом).

Теперь мне нужно выбрать одну из линий лесса и сгладить остатки.У этого бетона верхнее и нижнее сглаживание.В конце концов это должно выглядеть так:

Upper and Lower Smoothing

Моя первая мысль была действительно глупой ... Что мне нужно только изменить значение диапазона, но, конечно, это было совершенно неправильно.

Мне не удалось найти что-то, что может помочь мне в Google.Я имею в виду, что нашел верхнее и нижнее сглаживание, но только расчеты.Существует ли команда R для простого рисования этих линий сглаживания?

Я создал небольшую таблицу, чтобы ее было легче выполнять (не самая лучшая, но она работает):

table <- structure(list(
  Months = c("1980-06", "1980-07", "1980-08", "1980-09", 
             "1980-10", "1980-11", "1980-12", "1981-01"), 
  Total = c(75000, 70000, 60000, 73000, 72000, 71000, 76000, 71000)),
  .Names = c("Monts", "Total of Killed Pigs"), 
  row.names = c(NA, 4L), class = "data.frame")

ts.obj <- ts(table$`Total of Killed Pigs`, start = c(1980, 1), frequency = 2)

plot(ts.obj)

trend1 <- loess(ts.obj ~ as.numeric(time(ts.obj)), data = table, span =1)

predict1 <- predict(trend1)

matlines(as.numeric(time(ts.obj)), predict1, col ="blue")

Для полнотывот мой оригинальный код (таблица, которую я получил с этой страницы: https://datamarket.com/data/set/22ky/monthly-total-number-of-pigs-slaughtered-in-victoria-jan-1980-august-1995#!ds=22ky&display=line):

obj <- read.csv(file="PATH/monthly-total-number-of-pigs-sla.csv", header=TRUE, sep=",")
ts.obj <- ts(obj$Monthly.total.number.of.pigs.slaughtered.in.Victoria..Jan.1980...August.1995, start = c(1980, 1), frequency = 12)
plot(ts.obj)
trend1 <- loess (ts.obj ~ as.numeric(time(ts.obj)) , data = obj, span =1)
trend2 <- loess (ts.obj ~ as.numeric(time(ts.obj)) , data = obj, span =0.1)
predict1 <- predict (trend1)
predict2 <- predict (trend2)
matlines(as.numeric(time(ts.obj)), predict1, lty =1, col="blue")
matlines(as.numeric(time(ts.obj)), predict2, col="red")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...