Генеалогическая реконструкция: методики
Граф брачных связей села
Или как показать, что в селе все друг другу родственники?

Насколько тесны брачные связи внутри села?

Действительно ли за 300 лет его существования все на всех переженились по нескольку раз? Если говорить о Елфимове, то ответ кажется очевидным: да, это так. Потому что его население выросло с 560 человек в 1710-м до более чем 2000 жителей в 1917-м году при очень малой доле «пришлых» браков (что видно из метрических книг) и практически при отсутствии каких-то массовых миграций (если верить ревизским сказкам). Исключением является XVIII век - но тогда фамильный "костяк" села ещё только формировался. Хорошей иллюстрацией этого тезиса может послужить граф брачных связей села. В этой заметке мы узнаем, как его сделать.

Строим граф в yEd

Для простого ответа нам не потребуются инструменты глубокого анализа данных — хватит и простенького графопостроителя, например yEd Graph Editor. Для рядового любителя семейной истории эта программа ценна тем, что:
  • Не требует навыков программирования.
  • Автоматические раскладки (круговая, радиальная и др.) работают на удивление прилично «из коробки»;
  • Результат легко экспортировать в виде картинки svg/png, или даже веб-страницы htlml
  • Программа полностью бесплатная.
Но есть и недостатки:
  • Неудобный «ручной режим» выравнивания рёбер часто ломает уже построенную красивую диаграмму;
  • Поскольку yEd работает только на собственных внутренних алгоритмах, граф он строит так, как ему удобнее. И не всегда так, как вам хочется.
Но в первом приближении этими недостатками можно пренебречь.

План работы

Для построения графа сделаем следующее:
  • Переводим в текст метрические книги (часть вторая, о бракосочетавшихся) за 1800-1850 годы (заодно добавим к ним пару свеженайденных метрик за 1862-1865 годы);
  • При отсутствии фамилий — дополняем метрики информацией из ревизских сказок (таблицы с индексацией, напомню, находятся здесь);
  • Базовой единицей в графе является род (совокупность людей с общей фамилией в 1816 году). Это значит, что если в метрике нам встретится уличная фамилия, то мы заменяем её на родовую (показанную в ревизии) согласно таблице соответствия. Это сделает будущий граф более «чистым»;
  • Подготовим таблицу в формате, пригодном для обработки в yEd. Это очень просто, вот она, внизу. Первый столбец — род жениха, второй — род невесты (без женских окончаний, это важно для последующей группировки узлов), третий столбец — год бракосочетания.
Пример таблицы, подготовленной для импорта в yEd. Импортировать можно сразу из XLSX, а можно и из CSV.
В нашем случае таблица содержит 509 строк, которые включают информации о браках по 134 фамилиям. Т.е. мы строим граф из 134 вершин и 509 рёбер.
  • Далее загружаем таблицу в yEd (flie > open > CSV/XLSX). Настраиваем параметры отрисовки рёбер графа на вкладке Data > Edge List:
Настройки отображения графа. В строке «Source IDs» указываем род невесты, в строке «Target IDs» указываем род жениха: граф будет направленным, показывая направление внутренних миграций (движение женщин через брак от одного рода к другому). Покажем на графе родовые фамилии (вкладка Presentation > Nodes > Label Text), на рёбрах отобразим год каждого брака (Edges > Label Text).

Настройка результата

Сразу после загрузки получится похожая на коронавирус малоинформативная крокозябра. Не страшно, потом подправим:
В центре графа установим два рода — род прадеда (Железняковы) и прабабушки (Майоровы) — выделяем их мышкой, и строим радиальный граф (Layout > Radial с настройками Center Allocation Policy > Selected Nodes, Circle Assignment Strategy > Distance From Center).
Получаем красивую картинку. Примерно это я и ожидал увидеть: так выглядят «все метрики сразу»:
Брачная сеть села Елфимова (радиальный граф). Построен на основании МК 1800-1850 гг (ЦАНО ф.570 оп.4 д.3102, 3103), 1862, 1863, 1865 гг (ф.570 оп.3 д.90,120,209).
К сожалению, yEd позволяет произвести лишь визуальную оценку получившейся паутинки. Сразу заметны «родовитые» фамилии — Железняковы, Мортины, Муртаевы, Киняшевы, Юрочкины и другие; бросаются в глаза и несколько семейств, к которым подходит всего одна или две линии. Как например, к роду Соиных, последний представитель которого умер в 1806-м, а его сын ушел в зятья и фамилия угасла. Или к роду Харевых, вымершему между 1805 и 1824 годами. Но по большинству из них у меня просто мало данных: эти семьи ещё «вырастут» на графе.
Центральная и западная части графа. Проверить свойственников выделенной фамилии можно в окне «Neighborhood», а функция поиска в окне «Structure View» позволяет быстро найти интересующую фамилию.
Полученный граф является аналогом карты миграций, которую мы ранее делали в Kepler.gl для межсельских браков. В имеющейся форме он отображает только факт брачной связи между представителями рода А и рода Б в сильно укрупнённой форме: здесь не показаны дробление «исконных», «древних» родов на множество фамилий, связи внутри этих отделившихся фамильных веток и т.п. То есть перед нами несколько упрощённая версия брачной сети. Для более глубокого анализа графа можно будет воспользоваться другими инструментами.
Экспорт полученного графа в yEd выполняется также, как и в других программах. В верхнем меню выбираем File -> Export, после чего указываем папку для экспорта и выбираем формат файла, в котором хотим сохранить полученный граф.
Готово! Как видите, ничего хитрого. Если вам достаточно красивых картинок — можно остановиться здесь. Если нет, и нужен глубокий анализ (например, поиск скрытых кластеров-сообществ) — добро пожаловать в Gephi, которая умеет гораздо больше.
Made on
Tilda