这里有一个生成名为“双龙”的分形的简单方法。从x和y的随机值开始,并根据规则反复更新
x新= (− x旧+ y旧)/2 − b
y新= (− x旧− y旧)/2
其中, b以相等的概率随机取值为 0 或 1。这些点的图形填充了双龙图。
这是经过 10,000 次迭代之后的图。
经过100,000次迭代。
这是我用来绘制图表的 Python 脚本。
导入 matplotlib.pyplot 作为 plt 从 numpy.random 导入随机、选择 x,y = 随机(),随机() 对于范围内的_(100000): x,y = (-x + y)/2,(-x - y)/2 x -= 选择([0,1]) plt.plot(x, y, 'bo', markersize=1) plt.显示()
这里使用的算法是 [1] 中发现的用于生成类似分形的更通用算法的一个特别例子。
这是几年前的一篇类似帖子:
混沌游戏和谢尔宾斯基三角
[1] Darst,Palagallo和Price。平面中的分形平铺。数学杂志[71]:1,1998年。
随机生成的龙一文最先出现在John D. Cook上。
原文: https://www.johndcook.com/blog/2025/08/16/randomly-generated-dragon/