set.seed(101)
dd <- data.frame(x=rnorm(100),y=rnorm(100),z=rnorm(100),
c=rnorm(100),s=rnorm(100))
Функция масштабирования (я настроил, чтобы значения оставались строго в (0,1), не знаю, действительно ли это необходимо):
ss <- function(x) scale(x,center=min(x)-0.01,scale=diff(range(x))+0.02)
library(rgl)
Определите цвета (может быть лучшеспособ сделать это ...)
cvec <- apply(colorRamp(c("red","blue"))(ss(dd$c))/255,1,
function(x) rgb(x[1],x[2],x[3]))
Картинка (нужно type="s"
, чтобы получить сферы)
with(dd,plot3d(x,y,z,type="s",radius=ss(s), col=cvec))