Построение каркаса с использованием 2 разных цветов - PullRequest
0 голосов
/ 04 июня 2018

Я использую функцию wireframe для получения трехмерного графика.Поскольку я использую некоторые модели для прогнозирования, я хочу отобразить наблюдаемые и прогнозируемые значения на графике каркаса sime, но я хочу знать, возможно ли изменить цвет с начала прогнозирования. Это - результат, который я получаю, используя этот код:

wireframe(grid$mxt~grid$ages*grid$years,
      xlab=TeX("$x$"),ylab=TeX("$t$"),zlab=TeX("$log\\mu_x(t)"),
      drape = TRUE,col="black",
      col.regions = colorRampPalette(c("yellow", "red"))(100),
      scales = list(arrows=FALSE, cex=0.8, col = "black", font = 1),
      aspect=c(1,0.6))

Я хочу изменить цвет поверхности по сравнению с 2011 годом, чтобы сделать сюжет понятным.Я прикрепляю данные .Спасибо

1 Ответ

0 голосов
/ 08 июня 2018

Ну, думаю, я частично решил.Кажется, что каркасная функция не строит разные поверхности с разными (x, y).Итак, вам нужно расширить данные, чтобы иметь две разные поверхности, которые имеют одинаковые (x, y), но перед определенным y одна из них содержит NA, а после другой - NA.Я публикую код, который я использовал, и результаты (ну, я должен изменить цвет, но это довольно просто).

Это график год-год, где z равен коэффициенту логарифмической смертности для возрастов и лет.Матрица mxt1 имеет размерность (n, n1), а матрица pred имеет размерность (n, n2);y1 - вектор измерения n1 (годы наблюдаемых значений), а y2 - измерения n2 (годы предсказанных значений).

grid<-expand.grid(list(ages=ages, years=c(y1,y2)))
grid<-rbind(grid,grid)
grid$mxt <- c(cbind(mxt1, matrix(nrow=n,ncol=n2)),
          cbind(matrix(nrow=n,ncol=(n1-1)),mxt1[,n1],pred))
grid$group <- factor(c(rep("obs",n*n1+n*n2),rep("for",n*n1+n*n2)))

wireframe(mxt~ages*years,data=grid,
      groups=group, col.groups=c("red","green"))

Хитрость во второй части векторной сетки $ mxt для связывания двух поверхностей.Результат это .

Надеюсь, что кто-то помог.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...