Convertir texto en números con ArcGIS Arcade

Vídeo

Este tutorial también está disponible en vídeo.

Intente aplicar estilo al mapa con el campo Valor total

Empezará viendo los datos de evaluación de propiedades en un mapa y revisando el campo Valor total. Intentará simbolizar el mapa con este campo.

  1. Abra la capa de evaluación de propiedades de Portage la Prairie en Visor de mapas.

    Aparece un mapa de los límites de las propiedades de la ciudad.

    Mapa de límites de propiedades en Portage la Prairie, Manitoba, Canadá

  2. En caso necesario, haga clic en Iniciar sesión en la cinta e inicie sesión en su cuenta de organización de ArcGIS.
    Nota:

    Si no tiene una cuenta de organización, consulte las opciones de acceso a software.

  3. En el panel Capas, haga clic en el botón Opciones en el nombre de la capa y, seguidamente, en Mostrar tabla.

    Botón Opciones y opción Mostrar tabla

    Aparece la tabla de atributos de la capa debajo del mapa.

  4. Desplácese horizontalmente por la tabla para buscar el campo Valor total.

    Campo Valor total de la tabla

    Visualizará este campo en el mapa, de modo que pueda ver qué propiedades tienen valores más altos que otras.

  5. Cierre la tabla.
  6. En la barra de herramientas Configuración, en el lado derecho de la pantalla, haga clic en el botón Estilos.

    Botón Estilos

    Nota:

    Si la barra de herramientas Configuración no está disponible, en el panel Capas, haga clic en Evaluación de propiedades de Portage la Prairie . La barra de herramientas Configuración solo está disponible cuando se selecciona una capa.

  7. En el panel Estilos, haga clic en el botón Campo.

    Botón Campo

  8. En la ventana Campos seleccionados, haga clic en Valor total y en Agregar.

    El panel Estilos se actualiza para mostrar los estilos disponibles para el campo Valor total. Solo hay dos: Tipos (símbolos únicos) y Ubicación (símbolo único). Esperaba utilizar un estilo cuantitativo como Recuentos y cantidades (tamaño), pero ninguno está disponible.

    Estilos disponibles

    Cerca de la parte superior del panel Estilos, junto a Valor total, el tipo de campo aparece como abc, lo que indica que es una cadena de caracteres o un campo de texto.

    Indicador de tipo de campo

    Se requieren valores numéricos para utilizar el estilo Recuentos y cantidades. No funcionará con valores de texto.

Crear una expresión de Arcade

Todavía puede simbolizar el mapa con el campo Valor total y el estilo Recuentos y cantidades. Utilizará una expresión de Arcade para convertir los valores de texto en valores numéricos.

  1. En el panel Estilos, junto a Valor total, haga clic en el botón Eliminar.

    Botón Eliminar campo

  2. Haga clic en el botón Expresión.

    Aparece la ventana del generador de expresiones.

  3. Borre cualquier código de ejemplo en la ventana del generador de expresiones.
  4. Cerca de la parte inferior de la ventana, haga clic en el botón Expandir.

    Botón Expandir barra de herramientas

  5. En la barra de herramientas expandida, haga clic en Funciones.

    Botón Funciones en la barra de herramientas

    Aparece el panel Funciones, que enumera todas las funciones de Arcade disponibles.

  6. En la barra de búsqueda, escriba número.

    La lista se filtra a una función, Number(value, pattern?) -> Número

    • Número es el nombre de la función.
    • El valor y el patrón son sus dos parámetros. El signo de interrogación indica que el patrón es un parámetro opcional.
    • El texto -> Número al final indica que la salida de esta función será un número.

      Utilizará esta función para convertir los valores de texto almacenados en el campo Valor total en valores numéricos.

  7. Haga clic en Number(value, pattern?) -> Número

    Función Número

    La función aparece en el generador de expresiones. El parámetro valor_ se resalta. A continuación, lo reemplazará por el campo Valor total, por lo que deje resaltado el parámetro.

    Función Número con texto resaltado

  8. En la barra de herramientas, haga clic en Variables de perfil.

    Las variables de perfil son variables de datos del mapa que puede utilizar como entradas en Arcade expresión de Arcade. Incluyen todos los campos de la capa.

    En el panel Variables de perfil, $feature hace referencia a las entidades de la capa. En este caso, las entidades son propiedades de la capa Evaluación de propiedades de Portage la Prairie.

  9. Junto a $feature, haga clic en el botón de flecha.

    Botón de flecha situado junto a $feature

    Aparece una lista de todos los campos de la capa Evaluación de propiedades de Portage la Prairie.

  10. Desplácese hasta la parte inferior de la lista y haga clic en $feature.Total_Value.

    $feature.Total_Value

    La expresión se actualiza a Número ($feature.Total_Value).

    El primer parámetro, valor, se define ahora como $feature.Total_Value. La expresión accederá al atributo Valor total de cada entidad de la capa. El siguiente parámetro, patrón, es opcional, por lo que ejecutará la expresión para comprobar si funciona sin definir un patrón.

  11. Encima del generador de expresiones, haga clic en Ejecutar.

    Botón Ejecutar

    En la ventana Salida, se informa el Número de salida: NaN. Nan significa "No es un número". En este caso, la expresión no funcionó con un patrón indefinido.

  12. Modifique la expresión a Number($feature.Total_Value, '#.#').

    Expresión editada

    El carácter # significa un dígito opcional en la función Número. El patrón #.## convertirá cualquier cantidad de dígitos antes del decimal y hasta dos dígitos después del decimal. Los valores del campo Valor total son monetarios, así que hay una posibilidad de que algunos se puedan expresar con hasta dos decimales. Este patrón garantizará que los valores con posiciones decimales se puedan convertir.

  13. Haga clic de nuevo en Ejecutar.

    La ventana Salida sigue reportando Número: NaN. A continuación, consultará la documentación de la función para encontrar una solución.

Arreglar la expresión

Se recuerda que en la tabla de atributos cada número del campo Valor total iba precedido por un carácter $. Este es un carácter de texto. La expresión falla porque no puede convertir el carácter $ en un número. Consultará la documentación de la función Número para ver si hay una forma de eliminar el carácter $.

  1. En la barra de herramientas, haga clic en Funciones.
  2. En la barra de búsqueda, escriba número.
  3. Junto a Number(value, pattern?) -> Número, haga clic en el botón de flecha.

    Botón de flecha situado junto a la función Número

    Aparece la documentación de la función.

  4. Desplácese hacia abajo hasta la sección Ejemplos.

    El segundo ejemplo muestra cómo ignorar ciertos caracteres al convertir texto a números.

    Number('abc10def', 'abc##def') // devuelve 10.

    Ejemplo de la documentación de la función

    En la expresión de ejemplo, abc y def se definen como texto que se debe ignorar. Puede utilizar este patrón para ignorar el carácter $.

  5. En el generador de expresiones, coloque el cursor delante de #.## y escriba $.

    La expresión final debe ser Number($feature.Total_Value, '$#.##').

  6. Haga clic en Ejecutar.

    La ventana Salida informa Número: 85200. La expresión se realizó correctamente al convertir valores como $85.200 en números como 85200.

    Salida

    Nota:

    Si su navegador web está configurado con un idioma distinto del inglés americano, la expresión puede fallar debido a las comas que se utilizan como separadores de miles. Si la ventana Salida sigue informando Número: NaN, borre la expresión existente y sustitúyala por el siguiente:

    var numberOnly = Replace($feature.Total_Value, '$', '') // Remove dollar signs.
    var digitsOnly = Replace(numberOnly, ',', '') // Remove commas.
    Number(digitsOnly)
    Nota:

    Al hacer clic en Ejecutar, la expresión se prueba con la primera entidad de la capa.

    Ahora que la expresión está completa, cambiará su nombre para describir mejor su propósito.

  7. En la parte superior de la ventana, haga clic en Nueva expresión. Borre el texto existente y escriba Valor total (numérico).

    Expresión con nombre cambiado

  8. Haga clic en Hecho.

    Reaparece el mapa. El panel Estilos muestra la expresión Valor total (numérico) como el atributo elegido. Se ha seleccionado Recuentos y cantidades (color) como estilo predeterminado para los valores numéricos devueltos por la expresión.

    Mapa y panel de estilos

    El mapa visualiza los valores del campo Valor total con círculos más grandes para valores de propiedad evaluados más grandes.

    Nota:

    El campo Valor total y la capa Evaluación de propiedades de Portage la Prairie no cambian. La expresión Valor total (numérico) se guarda en el mapa web, no en la capa, pero si guarda una copia de la capa, estará disponible para su uso en otros mapas.

En este tutorial, aprendió a utilizar la función Número Arcade para convertir valores de texto en valores numéricos para una capa de un mapa de manera que pudiera aplicar el estilo Recuentos y cantidades. La expresión que ha escrito-Number($feature.Total_Value, '$#.##')- también se puede usar para formatear elementos emergentes y etiquetas.

Encontrará más tutoriales en la galería de tutoriales.