¿Cuál es el mejor método para visualizar una red en un mapa?

20

Tengo varios cientos de puntos de datos geo-referenciados, y las relaciones desde ese punto, a otros puntos. Estoy tratando de descubrir la mejor manera de visualizar esto en un mapa interactivo (posiblemente usando google maps).

Una idea que tuve fue que cuando un usuario hace clic en un punto, muestra todos los enlaces desde ese punto a los puntos relacionados.

Agradecería cualquier sugerencia o ejemplo de la mejor manera de hacer esto.

Tengo experiencia usando ArcGIS, QGIS, Python y una pequeña cantidad de javascript.

djq
fuente
2
Esto está relacionado con esta pregunta: gis.stackexchange.com/questions/778/…
julien

Respuestas:

12

Existen diferentes métodos según lo que desea lograr, la cantidad de datos que tiene y lo bonita que la quiere. Su idea es una buena idea y probablemente funcionaría bien. Por supuesto, otra respuesta obvia es mostrar todas las relaciones todo el tiempo, pero eso agregaría mucho desorden visual. Quizás un buen compromiso es mostrar siempre todas las relaciones pero en un color semitransparente para que apenas sean visibles. Luego, cuando un usuario hace clic o pasa el mouse sobre un punto de datos, los enlaces desde ese punto se volverán opacos.

Una cosa que puede hacer para que los mapas sean un poco más visualmente agradables e intuitivos es usar líneas curvas en lugar de líneas rectas para conectarse a los puntos de datos. Esto funciona en dos dimensiones o tres dimensiones . También puede hacer cosas interesantes jugando con los colores y el nivel de transparencia de las líneas .

Una solución muy agradable y elegante es el Mapa de flujo . Esta visualización también sería más interesante si agrega la interactividad de poder pasar el mouse o hacer clic en un punto de datos y ver los puntos de datos de conexión.

Dejaré que otros hablen con ArcGIS y QGIS, pero recomendaría probar protovis . Es un lenguaje específico de dominio para visualización construido sobre JavaScript, por lo que debería hacer que algunas de estas visualizaciones sean relativamente fáciles. La página Mapa de flujo incluye código en Java, que puede traducir a otros idiomas / plataformas. Probablemente no sería demasiado difícil traducir el código del Mapa de flujo a Protovis, aunque no lo he intentado.

Jay Askren
fuente
6

Dos herramientas que podría sugerir para un poco de exploración:

En ambas soluciones, podría especificar coordenadas geográficas como la posición de los nodos y obtener representaciones de flujo agradables por intensidad y / o dirección.

Ninguna de estas herramientas ofrece una exportación fácil a un mapa web, pero con un poco de pirateo probablemente podría traducir la salida de una de ellas a KML como un comienzo.

radek
fuente
1
tiene algunos guiones al final de su enlace al enlace python de networkx, aquí está el enlace correcto. Lo editaría para ti si pudiera, networkx.lanl.gov
Andy W
La URL no funciona. Dice: Sistema no disponible Actualmente estamos realizando mantenimiento programado. Lo intentaré más tarde
RutgerH
6

Jay ha cubierto muchas de las sugerencias que pensé de inmediato desde el ángulo de visualización. Sin embargo, ¿tiene que ser una red? Dependiendo de las necesidades del usuario y la agrupación de los datos, una mejor solución puede ser mostrar relaciones con la codificación de colores en lugar de las líneas.

Mi sugerencia: cuando un usuario hace clic en un punto, todos los puntos relacionados se intensifican en color / se iluminan y apagan (como el indicador de suspensión en una Mac dormida) / obtienen un halo de color. Haga clic en el icono o en otro punto y el primer conjunto de relaciones se desactivará. Esto eliminaría el desorden visual de las líneas.

Sospecho que esta solución funcionaría mejor si: - hay muchas relaciones (podría terminar pareciéndose a una pelea de espagueti) - los puntos se agrupan fuertemente, las líneas serán menos fáciles de ver si los puntos están muy juntos

¿Podría dar más detalles sobre la agrupación y el número total de relaciones?

Trevesy
fuente
+1 Esta podría ser una buena opción también dependiendo de los datos específicos.
Jay Askren
Cada nodo se conecta a un mínimo de otros 30 nodos y a un máximo de cien. Estoy de acuerdo en que si todo esto se traza simultáneamente, podría parecer abrumador. Creo que tener los nodos encendidos y apagados sería bueno, pero no sé cómo hacerlo (todavía).
djq
El patrón de "brillo" de mac sleep se vería impresionante, pero el halo probablemente funcionaría igual de bien siempre que elija un color intenso y solo use el color en el halo. Estoy pensando en rojo puro pero no tiene que ser así.
Trevesy
1

Referencia: SharpMap (proyecto de código abierto para SIG)

SmartJJ
fuente
Aquí hay un enlace que creo ( sharpmap.codeplex.com )
Jay Askren
1

Aquí puedes encontrar información sobre las líneas de deseo.

En la imagen puede ver muchos enlaces a puntos relacionados usando el plugin FlowMapper .

Ejemplo de enlaces a puntos relacionados

Sé que no completa la respuesta a su pregunta, pero espero que pueda ayudar en algo

Cerveza inglesa
fuente
0

Estaba pensando en esto recientemente y me encontré con esto ...

http://hint.fm/wind/

En mi caso, estoy mirando a los estudiantes que se trasladan de las escuelas secundarias a las universidades, así que tenga en cuenta que tengo muchos grupos y el movimiento ocurre solo en una dirección. Pero creo que la capacidad de ver el movimiento en la red ayudaría a los usuarios a ver la estructura general.

El cartógrafo silencioso
fuente