Etiquetar curvas de nivel en ArcGIS

Si se coloca etiquetas a todas las curvas de nivel podría ser innecesario. También colocar etiquetas sobre las líneas de las curvas de nivel no permite obtener un diseño aceptable. Con el motor de etiquetado de Maplex y unos pequeños detalles se pueden revertir estos problemas, dando como resultado etiquetas enmascaradas las cuales permiten una mejor visualización.
Curvas de nivel en ArcGIS
Una capa de curvas de nivel se puede categorizar en primarias y secundarias, según su intervalo altitudinal. Para realizar este proceso se requiere añadir un nuevo campo en la tabla atributos que permita categorizarlas. Aunque no sería necesario ejecutar el proceso descrito anteriormente, si se cuenta con los tipos de curvas de nivel en diferentes capas. Para realizar la categorización usando las herramientas de selección realizar los siguientes pasos:

  • Hacer clic derecho sobre la capa (de curvas de nivel) abrir la tabla de atributos.
  • En Table Options > Add Field agregar un nuevo campo tipo texto (Intervalo).
  • Ir al menú Selection > Select By Attributes.
  • En el cuadro de diálogo copiar la expresión Mod(Round(" Contour ", 0) * 10, 1000)=0 para seleccionar las curvas de nivel a un intervalo de 100 (metros). Nótese que Contour es el nombre del campo que contiene los valores de elevación. Para personalizar el intervalo altitudinal, el valor de diez (10) debe ser multiplicado por el intervalo requerido (1000), para curvas de nivel cada tres metros usar la expresión: Mod(Round(" Contour ", 0) * 10, 30)=0. También la expresión SQL: Floor( Contour/10) = Contour/10 permite personalizar la selección en diferentes escenarios (curvas de nivel cada 10 metros). Simplemente reemplazando el valor númerico (10) por el intervalo requerido.
  • En el campo Intervalo abrir el Field Calculator y colocar entre comillas “Primarias” y aceptar.
  • En Table Options invertir la selección con Switch Selection.
  • En el campo Intervalo abrir el Field Calculator y colocar entre comillas “Secundarias” y aceptar.

Para configurar y visualizar por categorías hacer clic derecho sobre la capa (de curvas de nivel) ir a Properties > Pestaña Symbology > Categories >Unique values > Intervalo > Add all values.

Mientras que para el etiquetado de las curvas de nivel a un intervalo de 100 metros configurar de la siguiente manera:

  • Hacer clic derecho sobre el Data Frame (Layers) y seleccionar Properties > Pestaña General > Label Engine > Maplex Label Engine.
  • Hacer clic derecho sobre la capa (de curvas de nivel) y seleccionar Properties > Pestaña Labels > Marcar casilla Label features in this layer > Label Field > Contour.
  • Hacer clic en el botón Expression, marcar la casilla Advanced y colocar la siguiente expresión:

Function FindLabel ([Contour])
If ([Contour] Mod 100) = 0 Then
FindLabel = [Contour]
End If
End Function

  • Nótese que [Countour] corresponde al campo que contiene los valores de elevación. Mod permite personalizar el intervalo de las curvas de nivel que van a ser etiquetadas.
  • Mantenerse en la ventana de las propiedades de la capa e ir a Other Options > Placement Properties > Pestaña Label Position > General > Contour Placement.
  • Luego dirigirse a Text Symbol > Symbol > Edit Symbol > Pestaña Mask > Style y seleccionar Halo para enmascarar las curvas de nivel.
  • Ahora aceptar todos los cambios, para mayor claridad se recomienda ver el siguiente vídeo:

franzpc

15 thoughts on “Etiquetar curvas de nivel en ArcGIS”

  1. Eduardo Moreira dice:

    Buenos dias,

    Me podrias explicar como funciona el mod, porque deseo hacerlo para curvas que estan cada 5 metros y no logro identificar como es el funcionamiento

    1. franzpc dice:

      Debes multiplicar el intervalo por diez, para contornos cada cinco metros usa la siguiente expresión.
      Mod(Round(" Contour ", 0) * 10, 50)=0

  2. IAN dice:

    saludos, sigo todos tus pasos en el vídeo, pero extrañamente no puedo visualizar las etiquetas de las curvas de nivel, espero puedas ayudarme. saludos y éxitos con tu blog

    1. franzpc dice:

      Has activado Maplex? aunque en el vídeo se muestra todo el procedimiento.

  3. Adrian Gutierrez dice:

    Basicamente se toman los valores enteros pues si tienes curvas de 1m en 1m las multiplicas por 10 y luego divides en 50 (seria intervalos de 5m) todos los multiplos de 5 quedaran enteros (sin decimales) y estos se seleccionarian, mejor dicho se seleccionan los que son múltiplos de 5, a mi parecer funciona mejor este Floor( Contour/10) = Contour/10 si tienes curvas muy detalladas ejemplo cada 0,5 m.
    Muy buen Post
    Saludos

    1. franzpc dice:

      Gracias, espero que te haya sido útil.

  4. Juancho dice:

    Hola, oye y si lo que se quiere es que el halo de la etiqueta sea transparente? Es que tengo una geología debajo (de diferentes colores) entonces la idea es que alrededor del texto se vea un hueco (como si la curva estuviera cortada). Gracias

  5. Javier Oviedo dice:

    Buenas Franz, seguí todo el procedimiento sin embargo a la hora del etiquetado final por alguna razón aparece todas las curvas etiquetadas, por lo que creo que algo estoy haciendo mal con el script, estoy usando el Arcmap 10.4 y al activar el botón de avanzado me muestra lo siguiente automáticamente:
    Function FindLabel ( [Elevacion] )
    FindLabel = [Elevacion]
    End Function
    Ya pobre de todas las formas modificando el script y a la hora de verificarlo no me da ningún error, de hecho me da una muestra de como se verás las etiquetas, sin embargo al aceptar todas las ventanas y ver el mapa me aparecen todas las curvas etiquetadas. Gracias por la ayuda.

    1. franzpc dice:

      Prueba con un Mod

  6. Anthony dice:

    luego de aplicar la sintaxis y etiquetas nuestras curvas maestras, tambien se puede hacer una seleccion por clase para las entidades.

  7. Andrés Guerrero dice:

    Hola, Buenas Tardes, de acuerdo con el etiquetado para las curvas a cada 100 metros, la expresión me sale errónea, cambio “Contour” por “ELEVACION” de acuerdo a mis curvas de nivel, pero me sale erronea al aplicarla, podras ayudarme. Gracias

    1. franzpc dice:

      Mejor prueba usando un Mod como se indica líneas arriba.

  8. Dj dice:

    Esta muy bien el vídeo, pero tengo una duda, cual es funcion de Maplex Label Engine, por q yo no lo activo y no hay problema.
    Gracias de antemano por tu respuesta.

    1. franzpc dice:

      Para activar mayor cantidad de opciones para trabajar con las etiquetas.

  9. Jonathan Torres dice:

    Muchas gracias compañero

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Carrito

Últimas publicaciones

  • Crear automáticamente un mapa de uso del suelo en QGIS
  • Dibujando en QGIS con mayor precisión que AutoCAD
  • Identificando y cuantificando cambios del uso de la tierra en línea
  • Monitoreo ambiental online utilizando un Geoportal
  • Manual PDF Prácticas de QGIS
  • Descargar ArcGIS Pro
  • Libro PDF: Teledetección Espacial
  • Diferencias entre un DSM, DEM & DTM
  • ¿Qué son las distancias geodésicas?
  • El GeoAmor mueve millones
  • Limitaciones o desafíos de los SIG
  • ¿Cómo calcular 18 índices radiométricos en un solo paso?

Suscríbete al blog

Introduce tu correo electrónico para recibir las últimas publicaciones.

Únete a otros 418 suscriptores