效果
【资料图】
准备数据
保存为csv
打开blender,在上部选择scripting,点击新建
完整代码如下(注意python缩进)
具体说明:
1. 添加需要的模块
2. 设置一些全局变量
3. 读取csv数据
4. 获取总共有几列
5. 循环读取每一行数据,这里有4行,所以是4次
5.1 获取这是第几行数据,因为要移动每个平面到对应的位置
5.2 新建一个边长为1的平面,并选中它,如图1
5.3 循环遍历每个顶点,并移动它。因为默认新建的物体是以原点为中心,边长为1,那么每个顶点按Y轴移动0.5,X轴移动0.5,如图2,如果是第二行数据,则会向再X轴方向移动1*1距离。
5.4 遍历这一行的每个数字,并建立动画
5.4.1 从第一帧开始,line_length在上面读取过,总共7列,line_length=7-1=6,循环6次
5.4.2 切换到目标帧,从第一帧开始
5.4.3 延Y轴方向进行缩放,i是一行的数据,i[a],代表第a列的数字,第一列是国家名,国家名是第0列,a从1开始。float()可以将纯字符转化为数字,这里有/4,进行比例调节,大家可自行设置。
5.4.4 在缩放数据通道上保存关键帧
5.4.5 往后移动20帧,并读取下一个数字
6.保存,点击三角运行
获得,带有6个关键帧的动态图表柱状图
关键词: