Вы работаете с размером панели w1000, h600 (+ поле). Измените размер вашего SVG-элемента (в CSS) соответственно, и диаграмма будет отображаться, как и ожидалось:
svg {
width: 1030px;
height: 630px;
}
PS: В качестве альтернативы установите размер SVG в вашем коде JS, таким образом, вы должны определить эти числа только в одном месте .
Я предпочитаю версию Рекурсивного алгоритма Подразделения. Это описано подробно здесь.
я дам быстрый обзор:
исходный рекурсивный алгоритм подразделения работает следующим образом. Во-первых, запустите с пустой области для лабиринта. Добавьте одну стену подряд, чтобы разделить камеру на два и поместить одну дыру в ту стену где-нибудь. Затем рекурсивно повторите этот процесс на каждой из двух новых камер, пока желаемый размер прохода не будет достигнут. Это просто и работает хорошо, но существуют очевидные узкие места, которые делают лабиринт легким решить.
вариант решает эту проблему путем рисования рандомизированных, "изогнутых" стен, а не прямых, создания узких мест менее очевидными.