Saltar al contenido (presiona la tecla Intro)
Javier Ladino

Javier Ladino

{Data/Design/Engineer}

  • Inicio
  • Portfolio
  • Sobre mí
  • EN 🇺🇸
  • FR 🇫🇷
DataViz

Cartografiando en Marte: mi proceso completo para mapear el recorrido del rover Perseverance

Para el reto de “Process” decidí documentar el flujo completo detrás del mapa y la animación que hice para el Día 18 – Out of This World, donde visualicé los desplazamientos del rover Perseverance sobre un mosaico HiRISE/CTX del cráter Jezero, en Marte.

En este post comparto el proceso técnico de principio a fin: desde la descarga del dataset original hasta la exportación de la animación en GIF y MP4, todo desarrollado en Python dentro de un Jupyter Notebook.

1️⃣ Datos de entrada: de NASA al cuaderno de Python

Fuente principal de datos de localización

  • Utilizo el bundle oficial Mars 2020 Rover PLACES de la NASA, que contiene la localización interpolada del rover a lo largo de la misión.
  • La NASA publica las posiciones del rover en el “Mars 2020 Rover PLACES Bundle”. Ahí tienes un CSV llamado best_interp.csv con las localizaciones del Perseverance desde el sol 0 hasta ~1511 (mayo de 2025)
  • El archivo best_interp.csv, que incluye:
    • sol: día marciano de la misión
    • coordenadas del rover en latitud/longitud planetocéntricas
    • información temporal y de calidad de la interpolación

Obtenemos toda la información del nuevo dataset:

A partir de ahí selecciono las columnas clave para el trazado de la ruta y eliminio los datos nulos:

Obtenemos la primera ruta del Perseverance trazada desde el sol 0 hasta ~1511 (mayo de 2025)

Ahora podemos decidir cuántos soles recientes queremos resaltar, es decir, podemos obtener visualmente el recorrido de los últimos 30 soles:

Mediante una visualización Scatter y la asignación de colores, podemos ver el avance de sus recorrido:


2️⃣ Mosaico HiRISE/CTX del cráter Jezero

El segundo insumo es el mosaico topográfico, un archivo de imagen DTM (modelo digital de terreno) en formato TIF del área de desplazamiento del Perseverance:

  • Archivo GeoTIFF: JEZ_ctx_B_soc_008_DTM_MOLAtopography_DeltaGeoid_20m_Eqc_latTs0_lon0.tif
  • Es un DTM (modelo digital de terreno) derivado de imágenes CTX, con resolución de 20 m, proyección equirectangular marciana (CRS ESRI:103885).
  • Datas source: https://pds-geosciences.wustl.edu/missions/mars2020/places.htm
  • Utilizamos la biblioteca Rasterio para el tratamiento del DTM.

Ahora tenemos la imagen del mapa base de fondo, y podremos superponer el recorrido. Pero primero, debemos ajustar sus sistemas de localización, pues uno está en metros y otro en grados.


3️⃣ ETL geoespacial: transformar las coordenadas del rover

El reto técnico principal es alinear las posiciones del rover con el raster:

  • El raster está en metros, proyección equirectangular marciana (ESRI:103885).
  • Las posiciones del rover vienen en grados (lat/long).

Para que la trayectoria se superponga correctamente al DTM, transformo las coordenadas usando un modelo esférico de Marte:

Resultados de la alineación:

Ahora tenemos la proyección de mapa base en metros y la trayectoría del rover en las mismas unidades:

Veamos un ejemplo con la visualización de los últimos 30 soles recorridos por el Rover:



4️⃣ Colormap marciano: del DTM en gris a una paleta “Marte”

El DTM original es un raster en escala de grises. Como no hay color “real” en el archivo (es un modelo de elevación, no una imagen RGB), diseño un colormap personalizado inspirado en tonos de Marte:

Intento ver otra variación del color artificial del archivo de imagen TIF, pero al modificar el raster se aleja de los colores reales del planeta rojo. Como ejercicio de visualuización del mapa de elevación es interesante.




5️⃣ Superposición de la trayectoria del rover

Finalmente, creamos el colorMap rojizo al estilo Marte como mapa base, ajustamos los Frames de la proyección para crear una animación en formato Gif y en video MP4. Podemos probar entre 300 y 600 frames, pero el render es muy lento, decidí dejarlo en 200 como inicio y no se ve mal la animación final.


Finalmente exporto la animación en dos formatos (Gif y MP4):


8️⃣ Reflexión: ciencia planetaria + cartografía + narrativa

Este flujo de trabajo combina:

  • Ciencia planetaria, al trabajar con datos reales de misión.
  • Cartografía y sistemas de referencia, al respetar el CRS marciano (ESRI:103885) y realizar la proyección adecuada.
  • Ingeniería de datos, con un ETL completo desde el CSV de la NASA hasta la construcción de un dataset proyectado.
  • Narrativa visual, gracias a la paleta personalizada, la integración del DTM y la animación temporal.

🔴 Explorar Marte, sol a sol, también es una forma de explorar hasta dónde podemos llegar con datos abiertos y herramientas libres.

Este reto y proyecto ha sido mi favorito hasta ahora.

#30DayMapChallenge #Process #Marte #Perseverance #Jezero #DataVisualization #Cartografía #GIS #Python #rasterio #Matplotlib #CienciaPlanetaria #DataStorytelling

Proyectos relacionados

Del arte a la tecnología: Cómo visualizar una estatua de Nantes en nube de puntos

mayo 11, 2023

Movilidad urbana y energía: cómo diseñamos un dashboard para medir CO₂ en Nantes, Rennes y Niort

septiembre 3, 2025

Análisis visual del discurso presidencial en Francia con python

mayo 24, 2022
© Copyright 2026 Javier Ladino. Perfect Portfolio | Desarrollado por Rara Theme.Funciona con WordPress.