函数也可以如此美丽——Julia 集的分形艺术微博:@月绒兔子前言大家在高中的时候都学过解析函数吧
说解析函数是不是有点显得太高端了
那好,给你一个 y=x 的函数,在 XY 坐标系上画出这个函数的图像
别告诉我你不会啊,这可是拿脚后跟都能画出来的图像啊
闲话不多说了
首先,先声明下此文并不是给大家讲数学的,也不是专门给理工科童鞋看的
此文的目的就是想让大家知道,有那么一个函数,她是如此的奇幻如此的美丽多变,就像她的名字一样—Julia
然后我们用 HTML5 的 canvas 来召唤她
先来几张 Julia 的芳容欣赏下:没错,以上四个图片不是电脑桌面,但是它确实 Julia 集合(Julia Set)所描绘的抽象艺术
Julia 集简介我是在一门叫做“高等统计物理”的课程上认识到 Julia 集的
虽然她的图像非常绚丽多姿,但其实她的真身非常简单,简单到你不敢想象:f(z)=z^2+C其中,z^2 表示 z 的平方,z 和 C 均为复数(复习一下:复数就是 a+ib,a 为实部,b 为虚部,i 就是表示虚部的部分)
然后我们做以下的迭代:Z1=f(z0)Z2=f(z1)Z3=f(z2)Z4=f(z3)…那么当 Z0=0,C=0
5 时Z1=0^2+0
75Z3=0
75^2+0
0625Z4=1
0625^2+0
62890625Z5=1
62890625^2+0
653355…Z6=Z5^2+0
346860796…最终 Zn 趋于无限大
同理,如果令 Z0 等于另一个值时,有可能会出现最终 Zn 收敛于某一值(无限趋近于某一个值),也有可能趋近无穷大,或者趋近无穷小(负值)
Julia 集绘制原理上面的简介说明了其实 Julia 集就是一个迭代函数而已,那么,这么美丽的图像是怎么画出来的呢