En una entrada anterior se vio cómo empezar a cargar datos de tráfico con Python para visualizarlos en ArcGIS Pro. A continuación se va a seguir incluyendo código para que se puedan visualizar dichos datos JSON en ArcGIS Pro.

El siguiente bloque de código se va a crear un diccionario para las entidades que son de tipo línea. Y se cargarán las entidades en la variable data_raw. Con el método append(), se van a agregar las entidades del tipo de geometría específicos al diccionario apropiado, en este caso sólo hay de un tipo .

data_features = dict(type=data_raw['type'], features=[])
for feat in data_raw['features']: 
    if feat['geometry']['type'] == 'LineString':       
        data_features['features'].append(feat)

Si se quiere averiguar cuántas entidades tenemos en dicho archivo o en una posición determinada deberemos pasar las siguientes líneas de código.

len(data_features['features'])

data_features['features'][9]['id']

A continuación, guardará el diccionario como un archivo JSON en el mismo directorio temporal donde guardó el JSON original ( temp_dir ). Ejecutará la función os.path.join() para crear rutas de archivo para el nuevo JSON.

Luego, creará la declaración with y usará la función json.dump() para guardar los diccionarios como archivos JSON. Con la función print() se podrá mostrar la ruta.

features_json_path = os.path.join(temp_dir, 'linestring.json')
with open(features_json_path, 'w') as linestring_json_file:
    json.dump(data_features, linestring_json_file, indent=4)
print(features_json_path)

Ahora que se crearon los archivos JSON, ejecutará la función arcpy.conversion.JSONToFeatures() para convertirlos en una “Feature Class” que se guardarán en la geodatabase anteriormente creada.

arcpy.conversion.JSONToFeatures(features_json_path, 'tráfico')

Dicha feature class se mostrará directamente en el visor y se le puede aportar una simbología dónde se muestre los niveles de tráfico en la ciudad de Santiago de Compostela.

 

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (1 votos, promedio: 5,00 de 5)

Cargando…

Formación de calidad impartida por profesionales