CÓMO
En ArcGIS Online y Portal for ArcGIS Map Viewer, los elementos emergentes configurados por expresiones de Arcade con varias instrucciones se pueden utilizar para mostrar y ordenar nombres y valores de campo en varios campos de una entidad. Esto hace que sea más fácil determinar qué producto o problema tiene la incidencia más alta o más baja dentro de un polígono. En este artículo se proporciona un ejemplo e instrucciones sobre el uso de expresiones de Arcade para crear una ventana emergente con nombres de campo y valores de varios campos ordenados en orden descendente en Map Viewer.
La siguiente imagen muestra una ventana emergente de Map Viewer con cada campo y registros separados.

function Comp (a, b) {
When(
IsEmpty(a[1]), -1,
IsEmpty(b[1]), 1,
Iif(a[1]>b[1], 1, -1)
);
};
var <variableName1> = [ ["<fieldName1>", $feature.<fieldName1>], ["<fieldName2>", $feature.<fieldName2>], ["<fieldName3>", $feature.<fieldName3>], ["<fieldName4>", $feature.<fieldName4>], ["<fieldName5>", $feature.<fieldName5>], ["<fieldName6>", $feature.<fieldName6>], ["<fieldName7>", $feature.<fieldName7>], ["<fieldName8>", $feature.<fieldName8>], ["<fieldName9>", $feature.<fieldName9>], ];
<variableName1> = Reverse(Sort(<variableName1>, Comp));
var <variableName2> = "";
for (var i in <variableName1>) {
if (<variableName2> == "") {
<variableName2> = Replace(Replace(Replace(<variableName1>[i], '["', ""), '",', ": "), ']', "");
} else {
<variableName2> += TextFormatting.NewLine + Replace(Replace(Replace(<variableName1>[i], '["', ""), '",', ": "), ']', "");
}
}
return <variableName2>;
El siguiente bloque de código es un ejemplo de la expresión de trabajo completa.
function Comp (a, b) {
When(
IsEmpty(a[1]), -1,
IsEmpty(b[1]), 1,
Iif(a[1]>b[1], 1, -1)
);
};
var arr = [
["BREASTCANCER", $feature.BREASTCANCER],
["CARDIOVASCULAR", $feature.CARDIOVASCULAR],
["CERVICALCANCER", $feature.CERVICALCANCER],
["COLONCANCER", $feature.COLONCANCER],
["DIABETES", $feature.DIABETES],
["INFLUENZA", $feature.INFLUENZA],
["LUNGCANCER", $feature.LUNGCANCER],
["PROSTATECANCER", $feature.PROSTATECANCER],
["SKINCANCER", $feature.SKINCANCER],
];
arr = Reverse(Sort(arr, Comp));
var result = "";
for (var i in arr) {
if (result == "") {
result = Replace(Replace(Replace(arr[i], '["', ""), '",', ": "), ']', "");
} else {
result += TextFormatting.NewLine + Replace(Replace(Replace(arr[i], '["', ""), '",', ": "), ']', "");
}
}
return result;


junto al campo de expresión a una nueva posición en la sección Seleccionar campos.La siguiente imagen muestra el campo Enfermedades-Ordenado recién agregado con varios nombres de campo y valores ordenados en orden descendente en la ventana emergente después de usar la expresión de Arcade.

Id. de artículo: 000029130
Obtener ayuda de expertos en ArcGIS
Empieza a chatear ahora