Mapa unidimensional del mundo?

59

Una pregunta un poco extraña, pero espero que esté bien preguntar aquí.

¿Alguien ha oído hablar de una proyección '1-dimensional' del mapa del mundo, es decir, mapear todos los puntos del globo en una sola línea?

Estaba pensando en hacer algo así: tratar de mantener a las ciudades que están "cerca" del mundo "cerca" de la línea.

Antes de hacer esto, me preguntaba cuál podría ser el estado del arte en esta área.

utunga
fuente
Buena idea, pero me gustaría decir que la línea es una característica 'bidimensional'.
Vent Lam
16
Las líneas son unidimensionales porque solo se necesita una coordenada para ubicar cualquier punto a lo largo de ella. Los puntos son de 0 dimensiones y los polígonos son de 2 dimensiones.
blah238
55
la proyección de Apple Peel: t1.thpservices.com/fotos/thum4/013/881/sfd-362035.jpg , aunque no he encontrado ningún algoritmo listo para usar ... ;-)
matt wilkie
2
@ Matt Es una linda. Para una buena aproximación, esta proyección asigna puntos cercanos (lat, lon) = (f, l) a (Int ((90-f) / e), l) donde e es el número de "espirales" en la cáscara. (Estoy bromeando un poco, pero esto es lo esencial). El problema es que a medida que e crece, los puntos de discontinuidad se vuelven densos, lo que implica que tiene exactamente lo contrario del comportamiento deseado: casi todos los pares de puntos que están cerca de la tierra se mapean lejos el uno del otro.
whuber

Respuestas:

49

Una técnica general para mapear una colección de puntos (para los cuales se dan distancias) en un espacio euclidiano (como tres espacios, un plano o incluso una línea) con una distorsión mínima de las distancias se llama escalamiento multidimensional (MDS). Hay varios algoritmos. Las soluciones están disponibles gratuitamente en R y, a menudo, se suministran con paquetes de estadísticas comerciales.

Las 20 ciudades más grandes de los EE. UU. Están asignadas aquí con la configuración predeterminada de MDS de Stata 11. Las garrapatas denotan intervalos de 100 km.

Estados Unidos unidimensionales

whuber
fuente
brillante, sí, esto era exactamente lo que estaba planeando hacer, aunque esperaba usar el algoritmo MDS llamado "Embutición de vecinos estocásticos", pero sí, en esencia. Veo que ya hiciste esto, sin embargo. Lo principal, creo, ¡es que me parece bastante lógico / bueno! Quiero decir interesante, es a su manera. ¡Gracias!
utunga
¡El escalamiento multidimensional es material 2D!
huckfinn 03 de
@huckfinn Se puede hacer en cualquier cantidad de dimensiones; 2 es simplemente una aplicación común. Ver, entre otros , Buja et al. quienes no proporcionan límites en la dimensión k y cuyo primer ejemplo (Figura 1, izquierda) claramente funciona en una dimensión. ¡O simplemente mire mi solución 1D MDS!
whuber
Sí, eso es cierto, pero por debajo de 2D IMO no tiene sentido, MDS se degradará a la medición de distancia normal y la reproyección a la viga numérica. ¿La ordenación se convierte en una clasificación que no soy shure?
huckfinn
¿Realmente estás afirmando que el mapa que presento en esta respuesta "no tiene sentido"? Eso va a necesitar una considerable explicación de su parte, como cualquiera puede ver claramente que (1) se hace transmitir información geográfica útil y (2) lo hace no se reducen a "distancia de medición normal."
whuber
17

Muchas gracias a @whuber por la respuesta inicial. pensé que debería subir los resultados de mí haciendo lo mismo ...

Por lo que vale, la forma particular de MDS que utilicé es algo llamado t-SNE (también conocido como 'Incrustación estocástica de Neihbor t-distribuido' ) para lograr las siguientes imágenes.

Aquí hay una imagen de todas las ciudades en orden: en el eje izquierdo se encuentra la ubicación 1-d real para esa ciudad, y las ciudades ordenadas de arriba a abajo, de izquierda a derecha en ese eje. Color = país ciudades en orden

Aquí hay otra foto donde tomé la línea de ciudades pero la tracé en el mapa mundial. Supongo que este problema se reduce a algo bastante cercano al problema del vendedor ambulante, pero con la diferencia de que no es solo un pedido de ciudades sino un mapeo de ciudades a una línea 1-d ...

camino a través del mapa del mundo

Si alguien quiere los datos de salida completos o la metodología utilizada aquí, envíeme un mensaje.

-

EDITAR:

En respuesta al comentario de @ whuber ..

Sí, tiene razón cuando enfatiza la distancia local (es decir, que las distancias locales de los vecinos inmediatos deben estar lo más cerca posible de las distancias reales en el mapa mundial), el problema MDS se reduce al problema del vendedor ambulante. Sin embargo, si enfatiza la optimización (o coincidencia) de distancias en un rango más amplio / moderado, puede obtener resultados diferentes. Por ejemplo, esto es lo que da el algoritmo t-sne cuando usa un valor más alto para 'perplejidad':ingrese la descripción de la imagen aquí

utunga
fuente
Gracias por compartir. Esto realmente es más parecido a un vendedor ambulante: no es MDS. Una solución MDS tendría mucha más distorsión pero una relación mucho más regular y predecible entre el mundo y el mapa. Como tal, su respuesta constituye una solución más al problema original.
whuber
Actualicé mi respuesta para dar otra variación, estar interesado en sus puntos de vista.
utunga el
La segunda es una solución curiosa e interesante, de hecho. Parece que su algoritmo "t-sne" intenta visitar cada punto exactamente . Esto es algo análogo, en el caso de 2D, para crear una proyección local altamente precisa alrededor de cada punto y luego permitir que la proyección se rompa entre los puntos, distorsionando gravemente sus distancias y orientaciones mientras se mantiene una fidelidad local casi perfecta. Supongo que eso podría tener algún uso especializado, pero en la práctica generalmente se permite un pequeño error de proyección porque permite suficiente holgura para mejorar en gran medida la solución global.
whuber
12

Lo que puede hacer es cubrir su espacio 2-d con una curva de relleno de espacio 1-d, como una curva de Peano o una curva de Hilbert. Luego mapeas tus puntos en el punto más cercano en la curva. Desenvuelva la curva y, en cierta medida, debería obtener una línea con las ciudades más cercanas en el espacio más cercano en la línea.

No es perfecto (no creo que nada pueda serlo), pero he visto que se usa como base para un algoritmo de vendedor ambulante; la idea es que si realiza su viaje de vendedor a lo largo de la línea, será una buena aproximación a la mejor solucion.

Hombre espacial
fuente
44
Esto funciona, pero tenga cuidado: las ciudades más cercanas a la línea estarán cerca en el espacio, pero las ciudades cercanas en el espacio en general no estarán cerca una de la otra en la línea (las curvas mapean ℝ-> ℝ² continuamente, por no tener un inverso continuo).
Leftaroundabout
2
esta respuesta se beneficiaría de un ejemplo gráfico de cómo se ve una curva de Peano / Hilbert (y / o enlaces a definiciones)
matt wilkie
1
o podría ir a Wikipedia usted mismo ... todo está allí, realmente no veo el punto de repetir Wikipedia demasiado aquí ...
Spacedman
1
Bueno, creo que puedes repetirlo un poco. ¿Qué tal un enlace o dos y una imagen?
blah238
Con fines ilustrativos, se puede mirar el mapa XKCD de Internet de Randall Munroe , que utiliza precisamente esta técnica (aunque a la inversa, es decir, mapear una línea a un avión)
waldyrious
9

¡Las preguntas extrañas son a menudo las más interesantes!

Si está buscando un estado del arte en la forma en que se utilizan las dimensiones en la cartografía, puede comenzar con la semiología gráfica de Bertin . Según Bertin, un trozo de papel (o una superficie de ipad) tiene 3 dimensiones: las dos dimensiones planas, más el valor / textura. La semiología de gráficos proporciona reglas para asignar dimensiones de información a estas dimensiones de representación. Cuando las dos dimensiones planas son las dimensiones espaciales, el gráfico es un mapa, y la tercera dimensión se utiliza para representar la información.

Si desea hacer un mapa unidimensional, significa que elige restringir el uso de una de las dimensiones del papel para representar la información que desea (la proximidad entre ciudades). ¿Es realmente necesario imponer tal restricción y no hacer un mapa normal?

Si realmente se necesita, como se dijo en otras respuestas, ¡no se puede hacer! La relación de proximidad entre ciudades no puede representarse en una dimensión. Para eso, podrías:

  • Utilice un "enfoque centrado en el usuario": si la audiencia del mapa se encuentra en algún lugar o hay un lugar específico en el que centrarse, este lugar puede tomarse como un origen, y todas las demás ciudades pueden clasificarse según su distancia a este origen.
  • Ordene las ciudades no solo según su distancia relativa, sino según otros criterios de similitud (población, continente, número de automóviles por habitante, etc.). Luego, algunos tratamientos estadísticos, como el análisis de componentes principales, podrían dar una línea de dimensión única para clasificar las ciudades.
julien
fuente
Todas las respuestas aquí hasta ahora son muy interesantes e ilustrativas. La primera viñeta en este, elegir un punto de origen y todos los demás son "distancia del origen", parece ser la práctica más inmediata.
Matt Wilkie
¡La proyección en dos dimensiones "tampoco se puede hacer", como es bien sabido! Por cierto, hay muchas aplicaciones para proyecciones 1D, como mapas de franjas para planificar viajes.
whuber
7
trying to keep cities that are 'close' on the globe 'close' on the line

Imagine tres ciudades a la misma distancia entre sí, por ejemplo, en los vértices de un triángulo equilátero. ¿Cómo representaría eso en una línea? Alguna información se perderá.

O descartas una dimensión por completo, por ejemplo, proyectando todas las ciudades en paralelo o en un meridiano (esto último sería interesante ya que no estamos acostumbrados a comparar la posición relativa norte / sur de las ciudades entre diferentes países), o seleccionas una específica medida dimensional, por ejemplo, "distancia de Nueva York".

La curva de Peano sugerida por Spacedman es muy interesante y sería un mapa original, pero las ciudades cercanas podrían terminar muy lejos en esa curva.

UncleZeiv
fuente
55
... mantenga sus ciudades cerca, y sus globos más cerca ...
Thomas
1
+1 Buenas observaciones. Sin embargo, no es una propuesta de uno u otro: no tiene que proyectar en una línea o reducirla a la distancia desde un punto base. Las soluciones no lineales están disponibles, tal como se usan para las proyecciones 2D (las habituales). El objetivo es minimizar alguna medida de las diferencias entre las distancias proyectadas y las distancias reales. A este respecto, la curva de Peano será particularmente pobre, pero sus variantes (adaptadas para pasar por todos los puntos deseados en las primeras etapas de su construcción) podrían funcionar, más o menos.
whuber
3

Nunca lo he usado, pero creo que un GeoHash podría funcionar para esto.

Los geohashes ofrecen propiedades como precisión arbitraria y la posibilidad de eliminar gradualmente caracteres del final del código para reducir su tamaño (y gradualmente perder precisión).

Como consecuencia de la degradación gradual de precisión, los lugares cercanos a menudo (pero no siempre) presentan prefijos similares. Por el contrario, cuanto más largo es un prefijo compartido, más cerca están los dos lugares.

Kirk Kuykendall
fuente
Estos hashes tienden a funcionar codificando subdivisiones refinadas de la superficie de la esfera en palabras, y por lo tanto son inherentemente bidimensionales. No está claro cómo se extraería una coordenada unidimensional de ellos (de alguna manera significativa).
whuber
@whuber Entonces, si tuviera una lista de ciudades y generara hashes para ellos pasando su lat / long a geohash.org, luego clasificara las ciudades en función del hash, ¿el orden de las ciudades no representaría un mapeo unidimensional ( independientemente de cuán preciso sea)
Kirk Kuykendall
1
Depende completamente del hash. Un simple pedido no es unidimensional, es solo un pedido. Además, necesita una coordenada numérica significativa. Si eso también sale del hash, entonces de hecho tienes una proyección 1D, pero es probable que tenga propiedades terribles. El objetivo de las proyecciones es ignorar las distorsiones que no importan para la visualización o el análisis y minimizar las que sí lo hacen. Es muy poco probable que cualquier hash sea útil como proyección para la mayoría de los propósitos.
whuber