Cree su propio diagrama de Voronoi

Por Pablo Rodríguez, el 29 junio, 2017. Categoría(s): Ciencia interactiva • Geografía • Matemáticas • Matlab ✎ 16

Los diagramas de Voronoi son una forma de subdividir una superficie. Se construyen de una forma intuitivamente sencilla:

  1. Se coloca un número finito de puntos sobre la superficie, que llamaremos nodos.
  2. Todos los puntos de la superficie se asocian con el nodo más cercano.

Una imagen vale más que mil palabras:

Fuente aquí
Fuente aquí

Y, si es usted más de «tocar» simulaciones interactivas, le recomiendo que eche un vistazo a esta web.

Estos diagramas tienen aplicaciones en ramas tan diversas como la geometría computacional, la ingeniería civil o la cristalografía. Su uso está también muy extendido en geografía. Véase, por ejemplo, este mapa de Voronoi dónde cada nodo es un aeropuerto internacional, de modo que cada subdivisión indica la posición del aeropuerto más cercano.

Fuente aquí
Fuente aquí

Los lectores de Naukas son gente ciertamente peculiar, por lo que no me sorprendería que quiera usted crear su propio diagrama de Voronoi sobre una superficie (plana). Un mapa, una cara, …. lo que se le ocurra. Si este es el caso (y usa usted Matlab), le invito a que pruebe este pequeño programa para generar mapas de Voronoi con clicks de ratón sobre una imagen.

Como muestra, un botón: un mapa de Voronoi sobre una proyección plana del mapa de Europa, siendo los nodos las capitales:

Diagrama de Voronoi con nodos en las capitales europeas
Diagrama de Voronoi con nodos en las capitales europeas

Gracias a @ClaraGrima por descubrirme la existencia de estos diagramas.



16 Comentarios

  1. Qué recuerdos… Uno de mis compañeros de doctorado (compartíamos despacho) hizo su tesina sobre los diagramas de Voronoi.

    Por cierto, hubiera estado bien que el programa fuera de un sistema no privativo, como Octave o Scilab.

    1. Lo acabo de probar en Octave usando Arch Linux y funciona relativamente bien, tan solo lo de siempre, que la interfaz gráfica falla un poco a la hora de representar las gráficas y por ejemplo redimensionando la ventana de «ploteo» no marca los puntos cuando pulsas (o no lo he conseguido).
      #SoftwareLibre!

    1. Hace mucho que busco como se hacen las figuras 3D con diagramas voronoi y esto es lo más cercano que he encontrado. Me puede indicar a modo de referencia que programas utilizo para los corazones y si no es mucho una reseña general para aplicarlo en piezas 3D.
      Yo hago las piezas 3D, pero no se cómo aplicarles la terminación del diagrama
      Muchas Gracias

  2. Buenos días
    Aunque sea un tema político me gustaría poder visualizar la Antártida partida entre las bases establecidas de los diferentes países distribuidos , por población del país , por territorio del país , y por el tratado de la Antártida.
    Sería interesante. Un ejemplo más nodos
    No dispongo de los datos para ayudar ni del conocimiento.
    Pero si mucha curiosidad que me ayudáis con vuestra lectura.
    Muchas gracias

      1. Hola de nuevo!
        Qué rapidez ! Parece que ya hubieras pensado en ello antes. Jejej
        No dispongo de Twitter pero he podido visualizar la distribución pero no veo la leyenda de los datos usados , como por ejemplo el territorio que tendría España ya que dispone de base.

        Me gustó tu artículo y tú cortesía al compartir mi pregunta tan rápidamente.
        Gracias Pablo !

  3. ¡Muy interesante!

    Me surgió la duda… ¿será posible hacer lo inverso? Es decir, dado el diagrama, determinar la ubicación de los nodos que lo generaron. Sería fantástico encontrar los nodos que demarcan políticamente todos los países del mundo.

    Saludos cordiales.

    1. Yo diría que es posible, incluso fácil. Sin embargo, para usarlo con países reales (que no tienen forma poligonal), creo que sería más apropiado usar, por ejemplo, centroides.

      Un saludo y gracias por tu interés.

  4. Hola, he notado que esta aplicación me serviría enormemente para mi proyecto de matemáticas, pero no entiendo como usarla y aplicar mis necesidades a ella.

  5. Hola, he notado que esta aplicación me serviría enormemente para mi proyecto de matemáticas, pero no entiendo como usarla y aplicar mis necesidades a ella. ¿Me puedes explicar como puedo poner mi mapa en el código?

Deja un comentario

Por Pablo Rodríguez, publicado el 29 junio, 2017
Categoría(s): Ciencia interactiva • Geografía • Matemáticas • Matlab