<\/HEAD>
Comencemos con el resultado:<\/P>
Una de las preguntas principales de una ubicación es: ¿Qué\/A quién puedo alcanzar en minutos? Por lo tanto, ArcGIS ofrece Network Analyst con su herramienta "Service Areas"<\/A>. Podemos analizar el área accesible en coche (otros modos son posibles) en un período de tiempo dado. Usando varios puntos de entrada también podemos analizar patrones en toda un área.<\/X><\/P>Usar una red normal no alteraría las áreas de servicio durante el día, pero usando el conjunto de datos de red de ArcGIS Online basado en datos HERE también podemos usar los patrones de tráfico para un día de la semana y una hora dada. Los patrones de tráfico pueden analizarse en un período de 15 minutos. Analizar las áreas de servicio durante un día proporciona una visión valiosa sobre la situación del tráfico en una región: grandes diferencias indican principalmente un mayor volumen de tráfico en las calles. El área total también indica la calidad de la red: áreas grandes indican una mejor accesibilidad usando el coche (quizás causada por una red densa de calles de alta velocidad).<\/P>
Análisis Automatizado<\/H3>Como me encanta el geoprocesamiento, estaba interesado en la automatización del análisis y la visualización como animación. Por lo tanto, el proceso es uno de dos pasos.<\/P>Primero creé una clase de entidad puntual simple llamada "StartPoints" que contiene las ubicaciones de las "facilities" y las añadí a la Capa de Análisis de Área de Servicio:<\/P><SPAN class="comment token">#create Analysis Layer<\/SPAN>
arcpy<SPAN class="punctuation token">.<\/SPAN>na<SPAN class="punctuation token">.<\/SPAN>MakeServiceAreaAnalysisLayer<SPAN class="punctuation token">(<\/SPAN><SPAN class="string token"><SPAN>"<\/SPAN><A class="jive-link-external-small" href="https:\/\/community.esri.com\/external-link.jspa?url=https%3A%2F%2Fwww.arcgis.com%2F" target="_blank">https:\/\/www.arcgis.com\/<\/A><SPAN>"<\/SPAN><\/SPAN><SPAN class="punctuation token">,<\/SPAN> <SPAN class="string token">"BeatCity Service Layer"<\/SPAN><SPAN class="punctuation token">,<\/SPAN> <SPAN class="string token">"Driving Time"<\/SPAN><SPAN class="punctuation token">,<\/SPAN> <SPAN class="string token">"FROM_FACILITIES"<\/SPAN><SPAN class="punctuation token">,<\/SPAN> <SPAN class="string token">"5;10;15;20;25;30"<\/SPAN><SPAN class="punctuation token">,<\/SPAN> <SPAN class="string token">"05.01.1900 00:01:00"<\/SPAN><SPAN class="punctuation token">,<\/SPAN> <SPAN class="string token">"LOCAL_TIME_AT_LOCATIONS"<\/SPAN><SPAN class="punctuation token">,<\/SPAN> <SPAN class="string token">"POLYGONS"<\/SPAN><SPAN class="punctuation token">,<\/SPAN> <SPAN class="string token">"STANDARD"<\/SPAN><SPAN class="punctuation token">,<\/SPAN> <SPAN class="string token">"DISSOLVE"<\/SPAN><SPAN class="punctuation token">,<\/SPAN> <SPAN class="string token">"RINGS"<\/SPAN><SPAN class="punctuation token">,<\/SPAN> <SPAN class="string token">"100 Meters"<\/SPAN><SPAN class="punctuation token">,<\/SPAN> None<SPAN class="punctuation token">,<\/SPAN> None<SPAN class="punctuation token">)<\/SPAN>
<SPAN class="comment token">#add locations from a point feature class<\/Span>
arcpy<span class="punctuation token">.<span>/span>na<span class=\"punctuation token\"><span>/span>AddLocations<span class=\"punctuation token\"><span>(</span><span class=\"string token\">\"BeatCity Service Layer\"</span><span class=\"punctuation token\"><span>,</span></span> <span class=\"string token\">\"Facilities\"</span><span class=\"punctuation token\"><span>,</span></span> <span class=\"string token\">\"StartPoints\"</span><span class=\"punctuation token\"><span>,</span></span> \"Name Description <span class=\"comment token\">#;CurbApproach # 0;Attr_Minutes # 0;Attr_TravelTime # 0;Attr_Miles # 0;Attr_Kilometers # 0;Attr_TimeAt1KPH # 0;Attr_WalkTime # 0;Attr_TruckMinutes # 0;Attr_TruckTravelTime # 0;Breaks_Minutes # #;Breaks_TravelTime # #;Breaks_Miles # #;Breaks_Kilometers # #;Breaks_TimeAt1KPH # #;Breaks_WalkTime # #;Breaks_TruckMinutes # #;Breaks_TruckTravelTime # #\", \"5000 Meters\", None, None, \"MATCH_TO_CLOSEST\", \"APPEND\", \"SNAP\", \"5 Meters\", \"EXCLUDE\", None)</span><span class=\"line-numbers-rows\"><span></span><span></span><span></span><span></span></span>Ahora necesitamos modificar los tiempos automáticamente para reflejar las horas del día. La hora inicial es '05.01.1900 00:00:00' que es un viernes y la hora es medianoche.<\/P>Podemos acceder a las propiedades bastante fácilmente. Como estoy trabajando con una escena 3D este es mi único objeto mapa en mi proyecto ArcGIS Pro:<\/P><SPAn clasS=\\ class="punctuation token">,</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>env<SPAN class="punctuation token">.</SPAN>workspace <SPAN class="operator token">+</SPAN> os<SPAN class="punctuation token">.</SPAN>sep <SPAN class="operator token">+</SPAN> <SPAN class="string token">"Friday_"</SPAN> <SPAN class="operator token">+</SPAN> str<SPAN class="punctuation token">(</SPAN>hour<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"ToBreak"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"ToBreak"</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="comment token">#y agregar un campo con la fecha para uso posterior si se desea:</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>AddField_management<SPAN class="punctuation token">(</SPAN>arcpy<SPAN class="punctuation token">.</SPAN>env<SPAN class="punctuation token">.</SPAN>workspace <SPAN class="operator token">+</SPAN> os<SPAN class="punctuation token">.</SPAN>sep <SPAN class="operator token">+</SPAN> <SPAN class="string token">"Friday_"</SPAN> <SPAN class="operator token">+</SPAN> str<SPAN class="punctuation token">(</SPAN>hour<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"datetime"</SPAN><SPAN class="punctuation token">,</SPAN><SPAN class="string token">"Date"</SPAN><SPAN class="punctuation token">,</SPAN><SPAN class="string token">""</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">""</SPAN><SPAN class="punctuation token">,</SPAN><SPAN class="number token">8</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"datetime"</SPAN><SPAnclass="punctuationtoken">,</span> <spanclass=stringtoken> <SPAN class="operator token">=<\/SPAN> <SPAN class="number token">0.0<\/SPAN>\n poly_layer<SPAN class="punctuation token">.<\/SPAN>symbology <SPAN class="operator token">=<\/SPAN> symbology\n <SPAN class="comment token">#extrude:<\/SPAN>\n poly_layer<SPAN class="punctuation token">.<\/SPAN>extrusion<SPAN class="punctuation token">(<\/SPAN><SPAN class="string token">'BASE_HEIGHT'<\/SPAN><SPAN class="punctuation token">,<\/SPAN> <SPAN class="string token">"3000-100*[ToBreak]"<\/SPAN><SPAN class="punctuation token">)<\/SPAN>\n <SPAN class="comment token">#export:<\/SPAN>\n datestring <SPAN class="operator token">=<\/SPAN> <SPAN class="string token">"2017\/12\/08 "<\/SPAN> <SPAN class="operator token">+<\/SPAN> str<SPAN class="punctuation token">(<\/SPAN>hour<SPAN class="punctuation token">)<\/SPAN> <SPAN class="operator token">+<\/SPAN> <SPAN class="string token">":00"<\/SPAN>\n <SPAN class="keyword token">for<\/SPAN> lyt <SPAN class="keyword token">in<\/SPAN> doc<SPAN class="punctuation token">.<\/SPAN>listLayouts<SPAN class="punctuation token">(<\/SPAN><SPAN class="punctuation token">)<\/SPAN><SPAN class="punctuation token">:<\/SPAN>\n <SPAN class="keyword token">for<\/SPAN> elm <SPAN class="keyword token">in<\/SPAN> lyt<SPAN class="punctuation token">.<\/SPAN>listElements<SPAN class="punctuation token">(<\/SPAN><SPAN class="string token">"TEXT_ELEMENT"<\/SPAN><SPAN class="punctuation token">)<\/SPAN><SPAN class="punctuation token">:<\/SPAN>\n <SPAN class="keyword token">if<\/SPAN> elm<SPAN class="punctuation token">.<\/span>text<Span class=\"punctuation token\">[<Span class=\"number token\">0<Span class=\"punctuation token\">]<Span class=\"operator token\">==<Span class=\"string token\">\"2\"<Span class=\"punctuation token\">:<Span class=\"keyword token\"><Span>              </Span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span>Lamentablemente, todo el proceso de renderizado y exportación toma aproximadamente 2.5 minutos por escena en mi Lenovo X270 sin GPU dedicada.El resultado es un montón de pngs que pueden convertirse en un gif usando varios sitios web de creación de gifs o el editor de imágenes de código abierto GIMP.El resultado se ve así:
También puedes agregar todas las características de polígono del resultado, añadir el atributo datetime, llenar el tiempo usado, habilitar la función temporal para la clase de entidad, y usar las opciones de animación en ArcGIS Pro para exportar toda la animación como un GIF: El resultado se ve bastante similar a la exportación por archivo. Sin embargo, no tienes todas las posibilidades de la vista de diseño. Pero aún así el resultado es bastante bueno (se añadieron buffers de 5, 10, 15, 20 mil):