如何利用R语言画出房地产三维动画制作图

R语言的绘图功能及应用案例_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
R语言的绘图功能及应用案例
阅读已结束,下载文档到电脑
想免费下载更多文档?
定制HR最喜欢的简历
下载文档到电脑,方便使用
还剩36页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢R语言作&三维网格曲面图_忧郁的文艺女青年_新浪博客
R语言作&三维网格曲面图
R语言中实现三维网格曲面图可用如下步骤实现:
1. plot3d先画出三维散点图
2.​ surface3d(rgl包)添加预测曲面
3. movie3d​ 让图片炫动起来
本人在实际操作中一直很困惑surface3d函数的用法,x,y,z到底代表什么意思?今天终于茅塞顿开。把个人理解记录下来,也希望能帮助到仍旧困惑的用户。
仍旧以mtcars这个神数据为例。(原谅我缺乏睡眠赶工来不及造数据)
data(mtcars)
#建立线性模型​
fit=lm(mpg ~ wt + disp + wt:disp, data =
mtcars)​
#获得wt,disp网格数据,并根据网格获得mpg预测值​
xrange=range(m$wt)
yrange=range(m$disp)
newdata &- expand.grid(wt = seq(xrange[1],
xrange[2], length.out = 20),
& & &disp =
seq(yrange[1], yrange[2], length.out = 20))
newdata$mpg=predict(fit,newdata)
#接下来一步及其关键,把数据处理成surface3d的标准格式​
x &- unique(newdata$wt)
y &- unique(newdata$disp)
z &- matrix(newdata$mpg, nrow = length(y), ncol =
length(x))
plot3d(m$wt, m$disp, m$mpg, type="s", size=0.5, lit=FALSE,xlab =
"wt",ylab="disp",zlab = "mpg")
surface3d(x,y,z,alpha=0.4, front="lines", back="lines")
movie3d(spin3d(axis=c(0,0,1),rpm=3),duration=10,fps=50)
得到下面一幅会自动旋转的图形。此处作者好困,先不研究如何粘贴旋转图形。
但我保证大家电脑上的图是旋转着的。​
此图会自动旋转
最重要的解释:​
surface3d(x,y,z)
z:mpg的网格预测值矩阵,其中行数由x的长度决定。列数由y的长度决定。
x:z中mpg对应的wt值。
y:z中mpg对应的disp值
举例说明:​
Z中第一行第二列mpg=30.690702
​Z中第一行第二列mpg=30.690702应该对应wt的第一个值1.513000,以及disp的第二个值&92.2.
​把完整代码贴在这里:
library(rgl)
data(mtcars)
attach(mtcars)
#得到mpg关于wt和disp的预测模型
fit &- lm(mpg ~ wt + disp + wt:disp, data =
#获得预测值
m$pred_mpg &- predict(mod)
#根据fit模型,对wt,disp网格预测mpg
xrange=range(wt)
yrange=range(disp)
detach(mtcars)
newdata &- expand.grid(wt = seq(xrange[1],
xrange[2], length.out = 20),
& & &disp =
seq(yrange[1], yrange[2], length.out = 20))
newdata$mpg=predict(fit,newdata)
#把数据转化成surface3d标准数据
x &- unique(newdata$wt)
y &- unique(newdata$disp)
z &- matrix(newdata$mpg, nrow = length(y), ncol =
length(x))
plot3d(mtcars$wt, mtcars$disp, mtcars$mpg, type="s", size=0.5,
lit=FALSE,xlab = "wt",ylab="disp",zlab = "mpg")
surface3d(x,y,z,alpha=0.4, front="lines", back="lines")
movie3d(spin3d(axis=c(0,0,1),rpm=3),duration=10,fps=50)
​也可以做出网格的三维散点图,结果如下图:
plot3d(newdata$wt, newdata$disp, newdata$mpg, type="s",
size=0.5, lit=FALSE,xlab = "wt",ylab="disp",zlab =
"mpg")​
密集恐惧症宝宝甚点!!​
原图也是动态的
忧郁的文艺女青年
博客等级:
博客积分:0
博客访问:12,131
关注人气:0
荣誉徽章:R语言绘制三维图_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
R语言绘制三维图
阅读已结束,下载文档到电脑
想免费下载本文?
定制HR最喜欢的简历
你可能喜欢

我要回帖

更多关于 三维产品动画制作 的文章

 

随机推荐