Генератор кривой Дракона на Python matplotlib
Написал код Кривой Дракона на Python по гайдам, но не могу понять что нужно поменять, чтобы получить другой, более красивый рисунок, как в интернете.
После выполнения результат такой:
Код:
import matplotlib.pyplot as plt
import math
def dragon_curve(order, scale=10):
if order == 0:
return [(0, 0)]
else:
curve = dragon_curve(order - 1, scale)
new_curve = [(x, y) for x, y in curve]
new_curve.append((curve[-1][0] + scale * math.cos(math.pi / 4),
curve[-1][1] + scale * math.sin(math.pi / 4)))
new_curve += [(x + scale * math.cos(math.pi / 4), y - scale * math.sin(math.pi / 4))
for x, y in reversed(curve)]
return new_curve
def plot_dragon_curve(order, scale=10):
curve = dragon_curve(order, scale)
x, y = zip(*curve)
plt.plot(x, y)
plt.axis('equal')
plt.xlabel('X')
plt.ylabel('Y')
order = 12
scale = 0.01
plot_dragon_curve(order, scale)
plt.show()
Источник: Stack Overflow на русском