Є три вірогідні сценарні фільми, які я намагаюся зробити на відстані:
- Станція метро на розв'язці, яка має 2 або більше сусідніх станцій. Тобто станція, про яку йдеться, з'єднує 2 або більше основних маршрутів і має 2 або більше сусідніх станцій.
- Термінальна станція метро, яка має лише 1 сусідню станцію. Це станція в кінці лінії.
- Станція метро в метро, яка має рівно дві сусідні станції, одна з будь-яких підходів.
Я намагаюся обчислити значення, яке можна назвати "середня відстань між сусідніми станціями"
arcpy.GenerateNearTable_analysis()
Може обробляти два варіанти: Відстань до найближчого елемента, і відстань між усіма функціями.
Хтось має розумний метод вирішення цих сценаріїв? Зауважте, що кожна станція позначена як "Обмін", "Термінал" або "Вбудований" у таблиці атрибутів під полем "Тип станції".
Додано:
Ось якийсь код psuedo на основі пропозиції @ whuber у коментарях. Я ще не встиг розібратися в цьому, тому, якщо хтось захоче врізатися в нього, ви отримаєте відзнаку! ;)
Я поглянув на бібліотеку NetworkX і, здається, працює так, як мені хочеться.
З огляду на графік:
A —― B ―― C ―― D
|
E
а також вузли та посилання:
Nodes = ["A", "B", "C", "D", "E"]
Links = [("A", "B"), ("B", "C"), ("C", "D"), ("B", "E")]
def myFunction(node):
identify the links that node belongs to
count the number of links
calculate the total link lengths
divide the total link lengths by the number of links
return someValue