2014-01-27 9 views
1

Я хотел бы создать 3D-график, который показывает 3D-область, представляющую комбинацию неравенств. В Mathematica я использую RegionPlot3D():Что такое эквивалент RegionPlot3D() Mathematica в R?

RegionPlot3D[ 
x^2 + y^2 + z^2 < 1 && x^2 + y^2 < z^2, {x, -1, 1}, {y, -1, 
    1}, {z, -1, 1}, PlotPoints -> 35, PlotRange -> All] 

, который генерирует:

enter image description here

Как я могу сделать это в R?

+1

взглянуть на 'persp', а также' rgl' пакет –

+0

Мне нравится 'persp' тоже, или вы можете исследовать' plot3D' –

+0

@Franck Dernoncourt Как можно улучшить мой ответ? –

ответ

0

Это делает сюжет:?

#equivalent to range and plotpoints 
x <- seq(-1, 1, by=0.01) 
y <- seq(-1, 1, by=0.01) 
z <- seq(-1, 1, by=0.01) 

df <- setNames(expand.grid(x, y, z), c("x", "y", "z")) 
df <- transform(df, ueq = (x^2 + y^2 + z^2 < 1) & (x^2 + y^2 < z^2)) 
df$color <- ifelse(df$ueq == TRUE, "green" , "red") 

#use this rgl 
require(rgl) 
with(df[df$ueq == TRUE, ], plot3d(x=x, y=y, z=z, col=color, type="p", size=5)) 
grid3d(c("x", "y+", "z")) 
Смежные вопросы