1 votos

Expresiones de etiquetado en AGOL con Arcade para determinadas funciones

Estoy trabajando en un mapa web en AGOL para el mapa interior de la oficina. Tengo algunos problemas para escribir expresiones personalizadas con Arcade con el fin de etiquetar los tipos de habitaciones (salas de oficina) en base a otro nombre de atributo.

Tengo 2 atributos:

  1. atributo "Room_type", que tiene al menos 10 valores diferentes, y
  2. atributo "Nombre", que tiene las etiquetas que necesito para los diferentes tipos de habitaciones.

Así que lo que quiero hacer es etiquetar sólo los tipos de sala que corresponden al tipo "Reunión", y las etiquetas deben venir del atributo "Nombre", porque contiene los títulos de cada tipo de sala "Reunión".

He intentado algo así, pero sólo me devuelve valores nulos:

a) var room_type = $feature["Room_type"]

var meetlabel = $feature.Name

`If (room_type == 'Meeting') {
return meetlabel;
} else {
return 'None';
}`

b) iif ($feature["Room_type"] == 'Meeting', $feature.Name, 'None')

c)

`If ($feature["Room_type"] == 'Meeting') {
return $feature.Name;
} else {
return 'None';
}`

d) When( $feature["Room_type"] == 'Meeting', $feature.Name, 'None')

e) Decode( $feature["Room_type"], 'Meeting', $feature.Name, 'None')

He empezado a pensar en calcular simplemente un nuevo campo para cada planta del edificio que tenga las etiquetas requeridas en su lugar con la calculadora de campos en ArcMap. Pero espero que sea posible hacerlo con Arcade, ya que definitivamente acortaría mi carga de trabajo.

0voto

user1092289 Puntos 6

Los códigos de abajo, especialmente la versión c) son realmente correctos y funcionan. He estado teniendo errores generales de la ventana de expresión de Arcade que no me mostraba los resultados en el mapa o simplemente no se cerraba o se congelaba.

Por ejemplo, esto ha funcionado bien: If ($feature.NAME1 == 'Office_space') { return "Department: " + $feature.NAME1 } else if ($feature.NAME1 == 'Meeting') { return "Meeting room: " + $feature.NAME1; } else { return ''; }

¡Salud!

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X