Los estilos Dictionary proporcionan una forma altamente personalizable de visualizar datos ricos en atributos en tus mapas y aplicaciones. Con una <\/SPAN><\/SPAN>look-up table<\/SPAN><\/SPAN><\/STRONG> de partes individuales de símbolos, un <\/SPAN><\/SPAN>dictionary script<\/SPAN><\/SPAN><\/STRONG> que conecta valores de atributos con claves de símbolos, y un <\/SPAN><\/SPAN>configuration file<\/SPAN><\/SPAN><\/STRONG> para ajustes finos, estos estilos pueden usarse junto con el Dictionary Renderer para construir símbolos complejos impulsados por múltiples atributos en tus datos. <\/SPAN><\/SPAN><\/P>\nCreé un estilo dictionary para la capa <\/SPAN><\/SPAN>Alternative Fuel Stations layer<\/SPAN><\/SPAN><\/A> en Living<\/SPAN> Atlas que proporciona información sobre cada estación de un vistazo rápido. <\/SPAN><\/SPAN> <\/SPAN><\/SPAN><\/P>\n
<\/span><\/SPAN><\/SPAN><\/P>\nEn este blog, compartiré algunos de mis mejores consejos para crear tu propio estilo dictionary personalizado mientras echamos un vistazo más detallado al <\/SPAN>que<\/SPAN> creé. Si quieres explorar el estilo mientras lees, aquí<\/SPAN> hay enlaces a <\/SPAN><\/SPAN>the style<\/SPAN><\/SPAN><\/A> y a web map<\/A> donde una capa ya ha sido configurada con el estilo. <\/SPAN><\/SPAN><\/SPAN><\/span><\/P>\n
Consejo 1 6 Reúne recursos para usar mientras construyes tu estilo <\/span>\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/
\n
Cada vez que comienzo a construir un nuevo estilo dictionary, estoy preparado con mis recursos favoritos a mano. Primero está este blog de mi colega Thad: Create custom dictionary styles for ArcGIS.<\/a> El blog comparte todas las herramientas y pasos necesarios para construir tu estilo de principio a fin. Mis herramientas favoritas son:
\n
\n- DB Browser for SQLite,
- Visual Studio Code,
- ArcGIS Pro, y
- Un subconjunto de los datos para probar el estilo durante el proceso.
La Guía de Estilo Dictionary Personalizado es otro gran lugar para comenzar con instrucciones detalladas paso a paso para crear tu propio estilo personalizado. También me gusta tener a mano el dictionary renderer toolkit. El toolkit está lleno de recursos para entender, crear y solucionar problemas de estilos dictionary, así como algunos estilos de muestra que vale la pena explorar.<\/SPAN> <\/SPAN><\/P>\nConsejo <\/SPAN>2<\/SPAN> 6 No olvides las claves de sedmbolos predeterminadas integradas <\/SPAN><\/SPAN><\/SPAN><\/H3>\nCada parte individual del sedmbolo tiene una clave nica definida en la <\/SPAN>tabla de bsqueda<\/SPAN><\/STRONG>. La mejor manera de crear y editar estas partes del sedmbolo es en ArcGIS Pro. Primero agrega el estilo a tu Catlogo del proyecto y luego haz doble clic en el estilo Alternative Fuel Stations para abrir la tabla. Aqu encontrars todas las partes del smbolo en el estilo. <\/SPAN> <\/SPAN><\/P>\nPrimero enfoqumonos en los smbolos de Fuel Type. Hay 7 smbolos de tipo de combustible y un smbolo predeterminado (llegaremos a ese en un momento), cada uno con su propia clave nica. Con la excepcin de la clave predeterminada, estas claves siguen el formato 3fuel- 4 seguido por la abreviatura del tipo de combustible encontrada en el campo Fuel_Type<\/FONT><\/STRONG>. <\/SPAN> <\/SPAN><\/P>\n
<\/span><\/P>\nEl <\/SPAN>script dictionary<\/SPAN><\/STRONG> es un script Arcade que contiene instrucciones sobre cmo usar valores de atributos para construir claves de smbolos. El script dictionary usa $feature.Fuel_Typ<\/STRONG>e<\/FONT> para producir la clave del tipo de combustible. Esta es la primera clave listada, as que cuando se evala a una caracterstica, la clave del tipo es la primera que se devuelve. <\/SPAN> <\/SPAN><\/P>\n
<\/span><\/P>\nPero 6 qu99 pasa cuando <\/SPAN>Fuel_Type<\/STRONG><\/FONT> est9 vac9o o se usa el nombre completo, 3Electric 4 en lugar de 3ELEC 4? En estos casos hipot9ticos, el script devolver9a 3fuel- 4 y 3fuel-Electric 4, dos claves que no existen en la tabla de b
squeda. Aqu
s es donde entra el s
mbolo predeterminado!<\/SPAN > <\ /SPAN><\ /P>\nLos renderizadores dictionary tienen claves de s\u000dmbolo predeterminadas integradas que se usan cuando la primera clave devuelta en el script no existe en la tabla de b\u000asqueda. Todo lo que tienes que hacer es agregar un s\u000dmbolo con la siguiente clave: \u0093Invalid_P\u0094 para puntos, \u0093Invalid_L\u0094 para l\u000dneas o \u0093Invalid_A\u0094 para pol\u000dgonos. <\ /SPAN ><\ /P >\nConsejo <\ /SPAN >3<\ /SPAN > \u0096 VarÃa los valores de propiedad del sÃmbolo con anulaciones primitivas<\ /SPAN ><\ /SPAN > <\ /SP AN ><\ /H3 >\npoColor. La sintaxis para una anulación primitiva es po:<primitive_name>|<property_name>|<value>. Para este estilo, esto significa que al dibujar el símbolo de verificación, para cualquier parte del símbolo etiquetada con status-color, el Color se reemplaza con el valor de poColor:

Ahora para etiquetar las partes del símbolo con el nombre primitivo. Esta anulación se aplicará al trazo de los símbolos verificado y no verificado en la tabla de consulta. Desde la tabla de consulta, seleccione el símbolo Verified y navegue a la pestaña Propiedades de Capa. Desde aquí use el desplegable de elementos para profundizar hasta el símbolo Shape Fill, luego formatee ese símbolo para llegar a las propiedades de relleno y trazo. En la pestaña estructura, haga clic en el pequeño símbolo de etiqueta junto al trazo y especifique status-color como el nombre primitivo. Ahora repita para el símbolo unverified.

Con los elementos del símbolo etiquetados, el estilo ahora soporta todas las 8 posibles combinaciones de contorno de estados de verificación y estados operativos usando solo dos partes individuales del símbolo.
Consejo 4 – Aproveche las propiedades de configuración EV_Network. Si una estación no pertenece a una red, ese campo se llena con "Non-networked."
Primero, agregue un nuevo símbolo para la etiqueta en la tabla de consulta y luego asegúrese de que sea un símbolo de texto de forma en la pestaña de propiedades de la capa. Para usar la red EV en los datos, reemplace la cadena de texto con el nombre del campo entre corchetes, en este caso, [EV_Network]:

En el archivo de configuración, creé la propiedad show_EV_Network para que pueda activar y desactivar las etiquetas. También especifiqué el campo EV_Network como un campo de símbolo. ¿Por qué no un campo de texto, pregunta usted? Los campos de texto funcionan muy bien cuando desea etiquetar todas las características. Si hubiera elegido usar un campo de texto, cada característica estaría etiquetada con su valor EV_Network y las estaciones EV que no están conectadas a una red tendrían una etiqueta "Non-networked". Decidí que solo quería que se etiquetaran las estaciones EV conectadas a una red, así que hice esa condición en el script del diccionario:

Los campos de texto no pueden ser accedidos por el script del diccionario, lo que significa que no pueden usarse como variables en la lógica. Dado que el script necesita usar el valor EV_Network para determinar si devolver la clave de la etiqueta, incluí el campo EV_Network como un campo de símbolo en el archivo de configuración.
Consejo 6 – Use nombres primitivos únicos
La propiedad final de configuración en este estilo es la propiedad show_Connector_Type, que le permite mostrar u ocultar un banner que muestra todos los tipos disponibles de conectores en una estación de carga EV. Los conectores disponibles están listados en un solo campo en la capa Alternative Fuel Stations. Aunque la configuración es una propiedad simple de encendido/apagado como las otras, esta parte del script del diccionario es un poco más complicada ya que tenemos que considerar qué símbolos de conectores se usan, cómo se posicionan esos símbolos y qué tan ancho debe ser el banner para acomodar esa cantidad de símbolos:

Comencemos con el ancho del banner. La tabla de consulta contiene partes del símbolo para banners que caben 1, 2, 3 o 4 símbolos de conectores. En el script del diccionario, creamos un arreglo con los tipos disponibles de conectores y contamos el número de objetos en el arreglo para determinar qué banner usar.
Luego el símbolo del conector se devuelven las keys. El script utiliza un bucle for para iterar a través de cada objeto en el array, devolviendo la key para cada parte del símbolo del tipo de conector correspondiente. Si nos detuviéramos aquí, todos los símbolos de conector se dibujarían uno encima del otro. Por suerte, ¡podemos usar primitive overrides aquí!
El override de desplazamiento X mueve las partes del símbolo etiquetadas a lo largo del eje x. Con cada iteración del bucle for, se añaden 11 puntos al desplazamiento X, de modo que el símbolo siguiente estará 11 puntos a la derecha del símbolo anterior. En la tabla de consulta, cada símbolo de conector ha sido etiquetado con un nombre primitivo que sigue la sintaxis [connector type]_marker (por ejemplo, J1772_marker, CHAdeMO_marker, etc.).
Así que si una estación tiene dos conectores, J1772 y CHAdeMO, las keys se verían así:
• Key del banner: background-2
• Keys de tipo de conector: con-J1772;po:J1772_marker|OffsetX|17;` y `con-CHAdeMO;po:CHAdeMO_marker|OffsetX|28;
A diferencia de nuestro ejemplo anterior con primitive overrides, cada parte del símbolo necesita tener un nombre primitivo único porque los valores de desplazamiento que se aplican a cada símbolo son para que no se superpongan.
### Consejo 7 – Devolver keys en orden de dibujo
En la última línea de este script de diccionario, devolvemos la cadena de keys, que le indica al cliente qué partes individuales del símbolo usar para crear el símbolo final. El orden en que aparecen las keys en la cadena dicta el orden en que se dibujan las partes del símbolo. Cuando miras un símbolo final dibujado con este estilo, puedes ver que los tipos de conector se dibujan encima del banner, y el banner se dibuja debajo del símbolo del tipo de combustible y el contorno, mientras que el indicador de accesibilidad se dibuja encima:
En este diccionario cuando todas las propiedades de configuración están activadas, las keys se devuelven en el siguiente orden: tipo de combustible, nombre de red, banner EV, tipos de conector EV, key verificada, tipo de combustible y acceso. La key del tipo de combustible se devuelve dos veces porque la key predeterminada incorporada (Invalid_P) solo se usa cuando la primera key devuelta produce una key que no está en la tabla de consulta. Añadir la key del tipo de combustible una segunda vez asegura el orden correcto de dibujo, pero otra opción es ajustar las partes del símbolo para eliminar símbolos de relleno innecesarios que pueden "enterrar" símbolos.
Y eso es todo: ¡ahora tienes todos mis mejores consejos para crear tu propio estilo personalizado de diccionario! Puedes profundizar más en este estilo descargándolo aquí o comenzar a construir tu propio estilo personalizado. ¡Déjame saber en los comentarios abajo qué ideas tienes para crear estilos personalizados de diccionario!