Qual é a melhor maneira de visualizar graficamente uma função de densidade 3D? Como em gostaria de visualizar ?
Não é necessário, mas o R
código para isso seria ótimo.
data-visualization
faz parte do nosso mandato.
Qual é a melhor maneira de visualizar graficamente uma função de densidade 3D? Como em gostaria de visualizar ?
Não é necessário, mas o R
código para isso seria ótimo.
data-visualization
faz parte do nosso mandato.
Respostas:
Bem, existem quatro abordagens possíveis que me vêm à mente (embora eu tenha certeza de que existem muito mais), mas basicamente você pode plotar os dados como um gráfico em perspectiva, um gráfico de contorno, um mapa de calor ou, se preferir, uma dispersão 3D plot (que é mais ou menos um plot de perspectiva quando você tem valores de para todos os pares . Aqui estão alguns exemplos de cada um (de um conjunto de dados 3D bem conhecido em ):R
Aqui estão dois gráficos adicionais com recursos de plotagem mais agradáveis do que os dados anteriormente. Portanto, dependendo da sua preferência, ditará como você deseja visualizar os conjuntos de dados 3D.
Here is the `R` code used to generate these four mentioned plots.
library(fields)
library(scatterplot3d)
#Data for illistarition
x = seq(-10, 10, length= 100)
y = x
f = function(x, y) { r = sqrt(x^2+y^2); 10 * sin(r)/r }
z = outer(x, y, f)
z[is.na(z)] = 1
#Method 1
#Perspective Plot
persp(x,y,z,col="lightblue",main="Perspective Plot")
#Method 2
#Contour Plot
contour(x,y,z,main="Contour Plot")
filled.contour(x,y,z,color=terrain.colors,main="Contour Plot",)
#Method 3
#Heatmap
image(x,y,z,main="Heat Map")
image.plot(x,y,z,main="Heat Map")
#Method 4
#3-D Scatter Plot
X = expand.grid(x,y)
x = X[,1]
y = X[,2]
z = c(z)
scatterplot3d(x,y,z,color="lightblue",pch=21,main="3-D Scatter Plot")
image.plot()
comando adicione uma barra de cores. Além disso, filled.contour()
gera um gráfico semelhante com uma barra de cores adicionada por padrão.
colorRampPalette()
, por exemplo, se você digitar, a = colorRampPalette(c('dark blue','blue','light blue','yellow','orange', 'red','dark red'))
ela cria uma função a
que gera uma aproximação discreta de um continuum de cores que passa por essas cores. O argumento to a
é um número inteiro que determina a resolução dessa aproximação discreta.