Expresiones de ArcGIS Arcade en la caja de herramientas de GeoAnalytics Desktop
Algunas herramientas de GeoAnalytics Desktop utilizan expresiones de ArcGIS Arcade en el análisis. A continuación se describen las herramientas y las funciones de las expresiones.
Con el uso de Arcade, los nombres de campo se formatean como $feature["field name"] o $feature.fieldname. La primera opción, $feature["field name"], se requiere cuando un nombre de campo contiene un espacio. Todos los ejemplos siguientes utilizan esta opción. Todas las herramientas de GeoAnalytics Desktop usan el formato $feature["field name"], excepto Entidades de unión. En Unir entidades, use $target["field name"] y $join["field name"] para especificar el dataset a utilizar.
Consulte el perfil de Arcade GeoAnalytics para obtener más información sobre el uso, las variables de perfil, los tipos de retorno y otros detalles.
Las siguientes herramientas utilizan expresiones de Arcade en la caja de herramientas de GeoAnalytics Desktop:
Reconstruir recorridos y Crear zonas de influencia: utilice expresiones de zona de influencia para realizar un cálculo matemático para establecer el tamaño de la zona de influencia. Es posible realizar cálculos simples y avanzados que se pueden aplicar a todos los registros. Este cálculo se aplica a cada entidad.
Reconstruir recorridos: utilice expresiones de división para especificar una condición para dividir recorridos. Cuando los puntos cumplen los criterios, los recorridos se dividen y resumen en diferentes recorridos. Puede aplicar condiciones simples y condiciones basadas en el recorrido. Por ejemplo, puede dividir recorridos cuando la velocidad del punto actual sea inferior a dos metros por segundo (
TrackCurrentSpeed() < 2).Unir entidades: utilice expresiones de unión para especificar una condición para seleccionar entidades que deberían incluirse en la unión. Puede realizar condiciones de unión simples (por ejemplo,
field a > field c) y condiciones avanzadas. Las condiciones se prueban con cada entidad para determinar qué es lo que se analiza.Calcular campo: realice cálculos simples y avanzados que se aplican a todos los registros. Este cálculo se aplica a cada entidad.
Detectar incidentes: determine condiciones de inicio y fin de incidentes. Utilice expresiones de inicio y fin para detectar incidentes. Una condición de Detectar incidentes siempre debe dar un resultado
trueofalse. Use una condición para determinar si una entidad se debería incluir en un incidente. Las condiciones se prueban con cada entidad para determinar qué entidades son incidentes.
Más información sobre las expresiones de Arcade
Ejemplos de operación y función matemáticas
Las expresiones pueden procesar números matemáticamente. La siguiente tabla recoge una muestra de las operaciones disponibles.
Más información sobre operaciones y funciones matemáticas disponibles en Arcade
|
Operador |
Explicación |
Ejemplo |
|---|---|---|
|
|
Devuelve la suma de a más b. |
4.0 |
|
|
Devuelve la diferencia de a menos b. |
1.1 |
|
|
Devuelve el producto de a por b. |
4.4 |
|
|
Devuelve el cociente de a dividido entre b. |
3.2 |
|
|
Devuelve el valor absoluto (positivo) de a. |
1,5 |
|
|
Devuelve el logaritmo natural (base e) de a. |
0 |
|
|
Devuelve el seno trigonométrico de a. Se presupone que la entrada es un ángulo en radianes. |
1 |
|
|
Devuelve el coseno trigonométrico de a. Se presupone que la entrada es un ángulo en radianes. |
1 |
|
|
Devuelve la tangente de a. Se presupone que la entrada es un ángulo en radianes. |
0 |
|
|
Devuelve la raíz cuadrada de a. |
3 |
|
|
Devuelve el número que tenga el valor más bajo de a y b. |
-3 |
|
|
Devuelve el número que tenga el valor más alto de a y b. |
1,5 |
|
|
Devuelve el valor de entrada si está contenido en los límites de la restricción. Si el valor es menor que el valor bajo, devuelve el valor bajo. Si el valor es mayor que el valor alto, devuelve el valor alto. |
Ejemplo 1: Devuelve 0 si Ejemplo 2: Devuelve 6 si |
Ejemplos de la función Texto
Las expresiones de Arcade pueden procesar texto. La siguiente tabla recoge una muestra de las operaciones disponibles.
Más información sobre las funciones de texto disponibles en Arcade
|
Operador |
Explicación |
Ejemplo |
Resultado |
|---|---|---|---|
|
|
Concatena valores juntos y devuelve una cadena de caracteres.
|
|
¡El geoanálisis es fantástico! |
|
|
Busca una cadena de caracteres dentro de otra cadena de caracteres. Los comodines no se admiten.
|
|
2 |
|
|
Forma una cadena de caracteres en minúscula.
|
|
geoanálisis |
Ejemplo de texto utilizando find y lower.
find(("north"), lower("146NorthStreet"))
Ejemplos de la función Date
Las expresiones de Arcade pueden procesar fechas. La siguiente tabla recoge una muestra de las operaciones disponibles. En Arcade, los valores de mes oscilan entre 0 (enero) y 11 (diciembre), los días entre 1 y 31, las horas entre 0 (12:00 a.m.) y 23 (11:00 p.m.), los minutos y segundos entre 0 y 59 y las milésimas de segundo entre 0 y 999.
Más información sobre las funciones de fecha disponibles en Arcade
|
Operador |
Explicación |
Ejemplo |
Resultado |
|---|---|---|---|
|
|
Analiza un valor o conjunto de valores en una cadena de caracteres de fecha.
|
Ejemplo 1: Ejemplo 2: Ejemplo 3: |
Ejemplo 1: 20 oct 2016 11:23:03 am Ejemplo 2: 14 ene 2017 12:00:00 am Ejemplo 3: Devuelve la hora actual |
|
|
Resta dos fechas y devuelve la diferencia en las unidades especificadas.
|
Ejemplo 1: Ejemplo 2: |
Los resultados pueden variar dependiendo de cuándo ejecute este comando. Ejemplo 1: -20532129137 Ejemplo 2: -0,6546783768647119 |
|
|
Devuelve el año de la fecha dada.
|
Ejemplo 1:
Ejemplo 2: |
Ejemplo 1: 2017 Ejemplo 2: 2012 |
Ejemplos de función lógica
Además de las expresiones matemáticas sencillas, puede utilizar las funciones avanzadas que se muestran en la siguiente tabla para aplicar expresiones de zona de influencia.
|
Función |
Explicación |
Ejemplo |
Resultado |
|---|---|---|---|
|
|
Devuelve un valor si una condición es
|
|
Devuelve Devuelve el resultado de la segunda función |
|
|
Evalúa una serie de expresiones en orden hasta que una es
|
|
Si |
|
|
Evalúa una expresión y compara su valor con los parámetros siguientes. Si la expresión coincide, devuelve el valor del siguiente parámetro. Si ninguno coincide, existe la opción de que el último parámetro sea un valor de devolución predeterminado.
|
|
Compara la igualdad entre el valor condicional |
Operadores condicionales
Las declaraciones condicionales pueden usar los operadores que se muestran en la tabla siguiente:
|
Operador |
Explicación |
Ejemplo |
Resultados |
|---|---|---|---|
|
|
a es mayor que b a es menor que b |
|
False |
|
|
a es mayor o igual que b a es menor o igual que b |
|
True |
|
|
a no es igual que b |
|
True |
|
|
a es igual que b |
|
True |
|
|
Se cumplen la condición 1 o la condición 2. |
|
True |
|
|
Se cumplen la condición 1 y la condición 2. |
|
False |
Ejemplos que realizan seguimientos
Las herramientas Detectar incidentes, Calcular campo y Reconstruir recorridos pueden usar ecuaciones que realicen seguimiento en Arcade. En Calcular campo, las ecuaciones de seguimiento se pueden utilizar cuando la capa de entrada sea una función de tiempo habilitada, La expresión realiza seguimiento esté activada y uno o más campos estén especificados para identificar rastreos. Las funciones con tiempo habilitado se enumeran en la tabla siguiente:
|
Función |
Explicación |
Ejemplo |
Resultado |
||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
TrackStartTime() |
Calcula la hora de inicio de un recorrido en milisegundos desde epoch. |
Con un recorrido que empieza el 2 de enero de 2017
|
|
||||||||||||
|
TrackDuration() |
Calcula la duración de un recorrido en milisegundos desde el inicio hasta el periodo de tiempo actual. |
El recorrido empieza el 2 de enero de 2017 y la fecha actual es el 4 de enero de 2017.
|
|
||||||||||||
|
TrackCurrentTime() |
Calcula la hora actual de un recorrido. |
Con una entidad que se produce el 3 de enero de 2017 a las 9:00 a.m.
|
|
||||||||||||
|
TrackIndex |
Devuelve el índice de tiempo de la entidad que se está calculando. |
Calculando este valor en la primera entidad de un recorrido.
|
|
||||||||||||
|
TrackFieldWindow(<fieldName>, <startIndex>, <endIndex>) |
Devuelve una matriz de valores en el campo indicado para el índice de tiempo especificado. La función de ventana le permite avanzar y retroceder en el tiempo. La expresión se evalúa en cada entidad del recorrido.
|
Ejemplo 1: Ejemplo 2: Ejemplo 3: |
Ejemplo 1: cuando se evalúa en cada entidad, la tabla muestra estos resultados:
Ejemplo 2: cuando se evalúa en el índice 2 (el valor es 30), devuelve Ejemplo 3: cuando se evalúa en el índice 2 (el valor es 30), devuelve |
||||||||||||
|
TrackGeometryWindow(<startIndex>, <endIndex>) |
Devuelve una matriz de valores que representan la geometría del índice de tiempo especificado. La función de ventana le permite avanzar y retroceder en el tiempo. La expresión se evalúa en cada entidad del recorrido.
|
Ejemplo 1: Ejemplo 2: Ejemplo 3: Ejemplo 4: encontrar el valor X del punto anterior |
Ejemplo 1: cuando se evalúa en cada entidad, la tabla muestra estos resultados:
Ejemplo 2: las polilíneas se devuelven en el formato Ejemplo 3: los polígonos se devuelven en el formato Ejemplo 4: se evalúa en el índice 2 (el valor es 30): |
||||||||||||
|
TrackWindow(<value1>, <value2>) |
Devuelve una matriz de valores que representan la geometría y todos los atributos del índice de tiempo especificado. La función de ventana le permite avanzar y retroceder en el tiempo.
|
Ejemplo 1: Ejemplo 2: |
Ejemplo 1: cuando se evalúa en cada entidad, la tabla muestra estos resultados:
Ejemplo 2: se evalúa en el índice 2 (el valor es 30): |
Utilice las expresiones de seguimiento de la tabla siguiente para calcular distancia, velocidad y aceleración en los seguimientos. Esto es similar a cálculos utilizados en la herramienta Calcular estadísticas de movimiento.
Todos los cálculos de la distancia se calculan en metros, la velocidad en metros por segundo y la aceleración en metros por segundo cuadrado. Las distancias se miden utilizando distancias geodésicas.
|
Función |
Explicación |
|---|---|
|
|
La suma de las distancias recorridas entre observaciones de la primera observación a la actual. |
|
|
La suma de las distancias recorridas entre observaciones de la primera observación a la actual más el valor dado. |
|
|
Las distancias entre el primer valor (inclusivo) y el último valor (exclusivo) en una ventana sobre la observación actual (0). |
|
|
La velocidad entre la observación anterior y la observación actual. |
|
|
La velocidad en la observación en relación con la observación actual. Por ejemplo, en el valor 2, es la velocidad en la observación dos observaciones después de la actual. |
|
|
Los valores de velocidad entre el primer valor (inclusivo) y el último valor (exclusivo) en una ventana alrededor de la observación actual (0). |
|
|
La aceleración entre la observación anterior y la observación actual. |
|
|
La aceleración en la observación en relación con la observación actual. |
|
|
Los valores de aceleración entre el primer valor (inclusivo) y el último valor (exclusivo) en una ventana alrededor de la observación actual (0). |
Los cálculos de ejemplo para la distancia, velocidad y aceleración utilizan ejemplos de la siguiente imagen.

|
Función |
Resultado de ejemplo |
||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
|
||||||||||||||
|
|
|
||||||||||||||
|
|
|
||||||||||||||
|
|
|
||||||||||||||
|
|
|
||||||||||||||
|
|
|
||||||||||||||
|
|
|
||||||||||||||
|
|
|
||||||||||||||
|
|
|