Instrução

Atribuir rótulos descritivos a atributos numéricos utilizando o dicionário do ArcGIS Arcade no ArcGIS Pro

Last Published: May 2, 2024

Resumo

No ArcGIS Pro, às vezes é necessário atribuir rótulos descritivos a atributos numéricos utilizando uma expressão Arcade. Isso simplifica a análise e visualização de dados, e torna as informações mais acessíveis para uma ampla gama de usuários, não afetar os atributos numéricos existentes em uma tabela de atributos.

Neste artigo, a camada de feição contém um campo numérico denominado Forest_Type. Usando uma expressão Arcade, os rótulos descritivos são atribuídos aos valores numéricos no campo, descrevendo os valores representados no campo numérico.

A imagem abaixo exibe a tabela de atributos da camada de feição contendo o campo numérico Forest_Type.

A tabela de atributos exibindo o campo com valores numéricos

Procedimento

  1. Abra o projeto do ArcGIS Pro, adicione a camada e crie uma expressão de rótulo. Consulte as Etapas 1 a 4 em ArcGIS Pro: escrever uma expressão de rótulo para obter instruções. Selecione Arcade para Idioma.
Note:
In the Contents pane, on the List By Labeling tab, ensure the selected feature layer and feature class check boxes are checked to display the labels.

As caixas de seleção Camada de feição e Classe de feição selecionadas estão marcadas

  1. Insira e configure a expressão abaixo na caixa Expressão :
    1. Substitua <field_name> pelo nome dos campos numéricos atribuídos aos rótulos descritivos. Neste exemplo, Forest_Type é usado.
var value = $feature.<field_name>;
  1. Defina uma matriz para mapear valores inteiros para rótulos correspondentes. Substitua <value1>, <value2>, <value3> e <value4> pelos valores numéricos do campo. Neste exemplo, 1, 2, 3 e 4 são usados.
  2. Substitua <label1>, <label2>, <label3> e <label4> por rótulos para descrever os valores numéricos do campo. Neste exemplo, Deciduous Forest, Coniferous Forest, Mixed Forest, e Regenerating Forest são usadas.
Note:
Add more mappings of integer values to corresponding labels if needed.
var labelMap = 
   { value: <value1>, label: "<label1>" },
   { value: <value2>, label: "<label2>" },
   { value: <value3>, label: "<label3>" },
   { value: <value4>, label: "<label4>" },
];
  1. Encontre o rótulo correspondente ao valor na matriz labelMap.
var label = "Other"; 
for (var i in labelMap) {
    if (value == labelMap[i].value) {
        label = labelMap[i].label;
        break;
    }
}

return label;

Abaixo está o código de trabalho completo da expressão Arcade.

var value = $feature.Forest_Type;

var labelMap = [
    { value: 1, label: "Deciduous Forest" },
    { value: 2, label: "Coniferous Forest" },
    { value: 3, label: "Mixed Forest" },
    { value: 4, label: "Regenerating Forest" },
];

var label = "Other"; 
for (var i in labelMap) {
    if (value == labelMap[i].value) {
        label = labelMap[i].label;
        break;
    }
}

return label;
  1. Clique no botão Verificar para validar a expressão.
  2. Clique em Aplicar para executar o script.
A configuração da expressão Arcade para rótulos

A imagem abaixo exibe texto descritivo atribuído a atributos numéricos como rótulos no ArcGIS Pro.

Os rótulos descritivos no mapa

ID do Artigo: 000032438

Obtenha suporte com IA

Resolva seu problema rapidamente com o chatbot de IA de suporte da Esri.

Comece a conversar agora

Informações Relacionadas

Descubra mais sobre este tema

Obtenha ajuda de especialistas do ArcGIS

Entre em contato com Suporte Técnico

Comece a conversar agora

Ir para as opções de download