Task1 使用Excel制作3D气泡立方体

使用Excel进行矩阵旋转及可视化 - 3D Bubble Cube

Posted by Jiawen Wu on December 7, 2018

使用旋转矩阵制作一只三维气泡立方体

STEP1 创建原始矩阵

  • 列出围成一个立方体需要的三维坐标
  • 12条边每条边由2个顶点和中间19个点组成
  • 得到由点的三维坐标形成的 236 x 3 的矩阵 A

Tips:

  • Ctrl+R 向右填充
  • Ctrl+D 向下填充
  • 使用ROW()函数返回当前所在行的值
  • 使用选择性粘贴控制粘贴格式

STEP2 创建旋转矩阵M,得到旋转后坐标矩阵 A*

  • 任意输入一个角度数值a,使用角度制与弧度制的转换公式: 弧度(A)=,将角度制转换为弧度制
  • 输入在XZ平面旋转弧度A的旋转矩阵 M1=
  • 使用函数MMULT选中矩阵M1及矩阵M2进行矩阵相乘 选中行数与M1相同,列数与M2相同的区域,按 Ctrl+Shift+Enter 得到在XZ平面旋转A,在YZ平面旋转B的旋转变换矩阵M
  • 同理,使用函数MMULT选中矩阵A及矩阵M进行矩阵相乘 选中行数与A相同,列数与M相同的区域,按 Ctrl+Shift+Enter 得到在XZ平面旋转A,在YZ平面旋转B后的坐标矩阵A*

STEP3 数据整理和排序(非必要)

  • 使用函数SMALL(Array, k)找到z坐标列中从小到大排列后,排序为k的值。
  • 配合row()函数对z列进行排序
  • 使用函数MATCH(Value, Array, k)在z坐标列中找到对应值的函数
  • 使用函数INDEX(Array, R, C) 返回矩阵Array中第R行,第C列的值
  • 配合column()函数对x,y,z三维坐标矩阵按z列从小到大的顺序重新排列

STEP4 数据可视化

  • 使用公式 Z’=对z坐标进行转化,使得z表示的大小与人眼对第三维度Z轴的 纵深敏感。
  • 选中x’,y’及Z’列插入三维气泡图,并对图形进行调整
  • 选择开发工具中的滚动条,在图表上部、左部各画一个滚动条
  • 对滚动条右键,选择设置控件格式,将最小值与最大值分别设置为0与180,设置控件链接分别 为F1与F6

参考文件下载:

文件及视频制作参考:http://fudan.lxxm.com/u15307110321/