Mandelbrot Set(曼德勃罗集)可能是分形 图形中最有名的图形,关于它的介绍我就不多写了,有兴趣的可以参考这个链接 。下面是关于如何使用Python来画这个图形的尝试。
由于Python标准库中还没有对图形处理的支持,在此我使用了PIL 。先来看一张生成的图形:
相关的代码大致是这样的:
其中第8行设置了图形最终的尺寸,如果想生成大一些或小一些的图形,可以修改这个参数。第9行是最大迭代次数,这个参数值越高越能得到更多的图像细节,当然,代价就是需要更多的计算时间。
另外,第47~55行的getColor函数定义了每个点颜色的产生规则,可以在这儿修改颜色规则,画出更多不同色彩的Mandelbrot集来。
下面是本程序在不同的参数及颜色规则下生成的另外几副图。
修改一下上面的代码,不难生成更多细节图片。不过,如果不想自己动手,也可以试一下XaoS 这个软件,通过它,你可以将Mandelbrot集的某个局部放大很多倍。当然,你会发现,无论放大了多少,Mandelbrot集始终有无穷无尽的变化与精致细节。