Ответьте на первую половину вашего вопроса: «Как я могу сделать разные точки для мужчин или женщин при использовании команды облачных вычислений (например, синие и розовые точки, состоящие только из синих крестиков)?»
cloud( death ~ numberofdrugs*geneticvalue , groups=gender, data=y )
Мета-ответ на это может включать некоторую не-3d визуализацию. Возможно, вы можете использовать решетку или ggplot2, чтобы разделить данные на несколько кратных? Это, вероятно, будет более понятным и, вероятно, будет проще добавлять результаты регрессии.
splom( ~ data.frame( death, numberofdrugs, geneticvalue ), groups=gender, data=y )
Функция сплом-панели по умолчанию - panel.pairs, и вы, вероятно, можете изменить ее, добавив линию регрессии без особых проблем.
ggplot2 легко выполняет регрессию в матрице графика, но я не могу заставить цвета работать.
pm <- plotmatrix( y[ , 1:3], mapping = aes(color=death) )
pm + geom_smooth(method="lm")
И, наконец, если вы действительно хотите создать облачный график с плоскостью регрессии, вот способ сделать это с помощью пакета scatterplot3d. Обратите внимание, что я изменил данные, чтобы иметь немного более интересную структуру:
numberofdrugs <- rpois( 84, 50 ) + 1
geneticvalue <- numberofdrugs + rpois( 84, 75 )
death <- geneticvalue + rpois( 42, 50 ) + 15
y <- data.frame( death, numberofdrugs, geneticvalue, gender )
library(scatterplot3d)
pts <- as.numeric( as.factor(y$gender) ) + 4
s <-scatterplot3d( y$death, y$numberofdrugs, y$geneticvalue, pch=pts, type="p", highlight.3d=TRUE )
fit <- lm( y$death ~ y$numberofdrugs + y$geneticvalue )
s$plane3d(fit)