Начну с небольшого примера.
Ограничимся
одноУПСовыми родичами.
Допустим, имеем двух пятиюродных братьев и их семиюродного брата.
Вполне естественно, что УПСы у всей троицы расположены на трёх
различных участках различных (или совпадающих) хромосом.
Теперь посмотрим, что даёт (в перспективе) визуализатор.
1) Идёт указание на участки хромосом.
2) Идёт оценка степени родства.
Иными словами, сразу имеем неустраняемый концептуальный просчёт: попытку получить два-в одном. Две различных задачи собираемся решить одновременно.
Одна из них ДНК-генеалогическая - оценка степени родства.
Решается только попарно. Обычная
УПСометрия. Третий-лишний. (Молчу про четвёртого, пятого и далее везде.)
Вторая - генеалогическая. Построение схемы родственных связей. Наилучший формат визуального представления генеалогических данных - генеалогическое дерево. Построение выполняется на основании уже имеющихся степеней родства. Иными словами, получить степени родства - это первая задача. Выстроить по ним диаграмму родственных отношений - вторая.
Вторая задача мало того, что решаемая. Так ещё и имеющая единственность решения. О возможных способах её решения
вот тут (ссылка).
Резюмирую: визуализатор в нынешнем виде, суть, трудозатратная (для разработчика) и бесполезная в практическом плане, красивая игрушка.
Оценка степени родства является независимой задачей из области
УПСометрии.
Построение схемы родственных отношений (генеалогического дерева) осуществляется на уже имеющихся степенях родства.
Визуализатор можно будет попытаться построить как синтез двух независимых задач только после того, как
а) будет получена методика достоверной оценки степеней родства;
б) будет созадана программа построения генеалогического дерева на основании степеней родства и совпадения-отличия данных по игреку и мито.
Иначе говоря, речь будет идти не просто о визуализаторе, а о серверной программе, которая на основании многочисленных RAW-data будет выдавать построение генеалогического дерева для выбранной персоны.