Existem métodos diferentes, dependendo do que você deseja realizar, da quantidade de dados que possui e do quanto deseja. Sua ideia é uma boa ideia e provavelmente funcionaria bem. É claro que outra resposta óbvia é mostrar todos os relacionamentos o tempo todo, mas isso adicionaria muita confusão visual. Talvez um bom compromisso seja sempre mostrar todos os relacionamentos, mas em uma cor semitransparente, para que eles sejam pouco visíveis. Então, quando um usuário clica ou passa o mouse sobre um ponto de dados, os links desse ponto se tornam opacos.
Uma coisa que você pode fazer para tornar os mapas um pouco mais agradáveis e intuitivos é usar linhas curvas em vez de linhas retas para conectar-se aos pontos de dados. Isso funciona em duas dimensões ou três dimensões . Você também pode fazer coisas interessantes, brincando com as cores e o nível de transparência das linhas .
Uma solução muito agradável e elegante é o mapa de fluxo . Essa visualização também seria mais interessante se você adicionar a interatividade de poder passar o mouse ou clicar em um ponto de dados e ver os pontos de dados de conexão.
Permitirei que outras pessoas falem com o ArcGIS e o QGIS, mas eu recomendaria tentar o protovis . É uma linguagem específica de domínio para visualização, construída sobre o javascript, por isso deve facilitar algumas dessas visualizações. A página Mapa de Fluxo inclui código em Java, que você pode traduzir para outros idiomas / plataformas. Provavelmente não seria muito difícil traduzir o código do Flow Map para o Protovis, embora eu ainda não tenha tentado.