Mam następujący 3d działki:Formatowanie persp3d działki
z moim data stworzyłem ją z następującego kodu:
library(rugarch)
library(rgl)
library(fGarch)
fd <- as.data.frame(modelfit, which = 'density')
color <- rgb(85, 141, 85, maxColorValue=255)
x <- seq(-0.2, 0.2, length=100)
y <-c(1:2318)
f <- function(s, t) {
dged(s,mean=fd[t,'Mu'],sd=fd[t,'Sigma'],nu=fd[t,'Shape'])
}
z <- outer(x, y, f)
persp3d(x, y, z, theta=50, phi=25, expand=0.75, col=color,
ticktype="detailed", xlab="", ylab="time", zlab="",axes=TRUE)
Jak mogę uzyskać zabarwienie w zależności od z wartości? Przyjrzałem się różnym rozwiązaniom, np. to one, ale nie mogłem utworzyć kolorowania w zależności od wartości z w tym przypadku. Rozwiązanie według this thread byłby następujący:
nrz <- nrow(z)
ncz <- ncol(z)
jet.colors <- colorRampPalette(c("#ffcccc", "#cc0000"))
# Generate the desired number of colors from this palette
nbcol <- 100
color <- jet.colors(nbcol)
# Compute the z-value at the facet centres
zfacet <- z[-1, -1] + z[-1, -ncz] + z[-nrz, -1] + z[-nrz, -ncz]
# Recode facet z-values into color indices
facetcol <- cut(zfacet, nbcol)
persp3d(x, y, z, theta=50, phi=25, expand=0.75, col=color[facetcol],
ticktype="detailed", xlab="", ylab="time", zlab="",axes=TRUE)
Ale to nie daje dobrych rezultatów, ponieważ nie zabarwić odpowiednią działkę. Chcę mieć skoki mojej powierzchni, na przykład na czerwono i niskie wartości np. na niebiesko z ładnym płynnym przejściem, ale ten rodzaj kolorów kroi plasterki, więc w zależności od czasu? Tak więc ekstremalne duże skoki powinny być zabarwione na kolcach na czerwono, a wartości na dole, np. w zielonym. Jak mogę to zdobyć?
Edytuj: Znalazłem rozwiązanie mojego poprzedniego pytania o datę na osi, jedynym problemem, jaki pozostał, jest odpowiednia kolorystyka zależna od wartości z.
Uwaga: nie wiem dlaczego, ale muszę załadować pakiet rgl przed otwarciem obszaru roboczego, inaczej mój R przestaje działać, nie wiem dlaczego. –