利用Rhino+GH+AI的数据可视化表现

文/张可天

使用软件:Rhinoceros, Grasshopper, Illustrator

编者按:可可这次又带来神级教程,可以说完美的解决了一大类图解的绘制思路问题。我经常被问到类似文中的数据可视化图解“是怎么画的”这类问题,无奈对于数据处理方面,我知之甚少。相信今天的这一篇文章能够为大家解惑。

作者简介


张可天
张可天是2015年毕业于天津大学的建筑学硕士。目前就职于天津市设计院。他专长建筑方案设计及表现,基本功扎实,而且他也一直乐于分享他总结到的技巧,曾经在人人网上接连发表过多篇图文教程:《可可这样画》系列。同时他也是专筑网《SketchUp极速出图八讲》的主讲人。

 
这是一篇我在知乎的回答(点击这里查看张可天的知乎答案),题主提出的参考原图如下,希望能够得知这张图的画法。

我尝试用Rhino+Grasshopper画图并导入AI修饰,步骤如下:

1.取得数据

样例中的图应该是有数据来源的,可能是作者调研或文献摘录的。我并没有这些数据,所以我把原图中的数据大概加估计地逆向回来。数据的存在形式有很多种,我使用了比较常见的一种,将数据放在一张EXCEL表格的两个SHEET中,如下图。

Sheet1是一张映射关系图,是样例图中从右上方到左下方的那些个映射曲线数据。excel中,横轴是“人口分布(Population Distribution)”中的各类人,纵轴是“元素时间表(Element Timeline)”中的那些“元素(Element)”,“0”代表着没有映射关系,“1”代表着有映射关系。


Sheet2是一张时间数据图,是样例图中右下的那张大表格的数据。excel中,横轴是样例图的“时间点”,纵轴是“元素(Element)”,其中的数据根据原图中的意思,应该是某个“元素(Element)”在“工作日/休息日(Workday/Weekend)”时,特定的“时间点”上所接待或容纳的人数。我并没有看出来样例图中该数据的单位,所以我臆测了一下。我以垂直方向一格代表“10人”为单位,读取了这些数据,得到上表。

2.导入Rhino
我使用Grasshopper中的Bumble Bee将Excel数据导进来,这个插件是我能够找到的导入Excel表格效率最高的一个插件了,并且好处是他可以导入一个文件中的不同的SHEET,非常方便。下图中的Panel中,你可以看到,Excel数据被完整的导入进来了~

3.建立第一部分——映射曲线

先不要急着建立曲线,我们需要先知道这些曲线画在哪里。我先在Rhino的顶视图(Top View)中,模拟样例图中的位置,建立了各个曲线的起点和终点位置,并将它们拾取到GH中。务必注意拾取的顺序,防止出错。如下图:

之后我用了一些数据变换来让映射数据转换为点和点的对应数据,并把它们用Besier Span运算器连接起来。特别需要注意的是,使用大小相同的X向量作为Besier Span运算器中各映射点间的连接线的切向向量容易造成曲线区分度太低,所以使用了下图中橘色虚线部分的做法,按照连接线两侧映射点的高低位置不同,赋予不同的X向量大小,增加了曲线的区分度。(我发现原图应该是手动绘制的,即使按照我这样区分依然很难辨识曲线关系。。。水平有限请谅解)

结果是这样的:(-_-!!!)

4.建立第二部分——时间表

下面我处理了时间表数据,我首先将下图中橘色虚线框中的点沿X轴复制,得到了每行24个用于对应时间数据的点。然后我把Excel导入的数据做了一系列的数据变换先将数据分好组,然后将他们的值依次赋给上述相应位置上的点的Y坐标值,这些点就有高低变化了。需要特别注意的,我反复观察了样例图,发现原图为了让时间表中的曲线看起来不会太细,时间表数据中没有“0”这么小的数据(防止时间表中的线过细),因此我将最小的数据控制在0.5。这些点的结果如下图:

接下来我把他们连了起来,我尝试了几种连接方法,最后选择Blend Curve运算器,这样绘出的曲线,数据比较准确,图形连接也比较平滑。如下图:

5.建立第三部分——元素工作日/休息日图例

这一部分相对容易了,点的位置我已经画好了,只需要用合适的运算器将他们分好组连接起来就可以了~~

6.烘焙曲线并导出到AI中

把曲线分好组烘焙出来,我还顺手画上了时间表的网格,省着到AI里画了~

我是在rhino里分别导出成ai文件,然后到ai里粘贴到一个文件的~~就酱~

然后先把时间表的网格改一改

我先把周围这些零碎东西画上了,一个是可以把构图确定下来,二一个可以把画好的图例元素当做图形样式直接应用到其他曲线上,提高效率。如下图:

剩下的就是慢慢画,调整线型、填充、透明度等等步骤了。良好的图层、组、图形样式、色板的设置会帮你提高不少绘图效率的~最后,我调整了一下构图以及左下部分曲线的构型,让他们不会过粗或者过细。

人物图标懒得搞了,最终效果就酱:

跟原图比还是有很多不足的,需要慢慢调整修正~~希望能帮到大家。

源文件贴上来,点击这里下载 密码:vsts

张可天
2015.12.08

版权声明

本文由张可天授权本站发表,转载之前请务必联系原作者或站长:联系站长

网站推广阶段,欢迎您关注网站的微信公共平台:
扫描关注“韩的日志”微信订阅号

  • 请注意,为了保证我能看到所有留言的提示,留言将通过审核后才会显示,请不必重复留言。
韩世麟

韩世麟

站长,天津大学研究生毕业,天津人
存为书签: 本文的固定链接.

3 条评论

  1. 好棒呀 正想学呢

  2. 非常高大上的图,感觉这是一个城市卖场流量样本分析图。不知我猜得对不?

  3. 我想问问,bumble bee这个插件在犀牛6里是不是用不了

发表评论