21 votos

¿Cómo mejorar el rendimiento de renderizado de un shapefile muy grande?

Tengo un shapefile de polígonos que tiene un componente de archivo .dbf de 100 MB y otro .shp de 500 MB. La razón de que sea tan grande es que está clasificado como base territorial de todo un distrito.

Cada vez que visualizo el archivo en ArcCatalog o ArcMap y muevo ligeramente la ventana de visualización, es necesario volver a dibujar todo el archivo desde cero. He probado la indexación espacial y la importación en una base de datos geográficos, pero ninguno de los dos métodos proporciona una mejora notable del rendimiento con respecto a la representación.

La página de ayuda de Esri sugiere que para mejorar el rendimiento del shapefile, el usuario puede generalizar el archivo . Aunque es obvio que esto funcionaría, no quiero perder ninguna información. Dividir el archivo no es lo ideal, ya que estoy haciendo un montón de geoprocesamiento / consultas con toda su área. Supongo que podría evitar ver toda el área a la vez, pero a veces, por ejemplo, es bueno ver qué partes del archivo ha seleccionado una consulta.

¿Hay alguna otra forma de mejorar el rendimiento de la renderización?

(En teoría, lo ideal sería construir "pirámides" de archivos shape; no sé por qué ArcGIS nunca ha soportado este enfoque, al menos que yo sepa).

3voto

IcySnow Puntos 168

Entiendo tu frustración. Yo trabajo habitualmente con archivos shape de gran tamaño como éste y, en general, no tengo problemas de visualización. Estoy de acuerdo con todos los comentarios anteriores, especialmente asegurarse de que todo está en la misma proyección, incluyendo el marco de datos. Supongo que ha copiado el archivo localmente y no está tratando de acceder a él a través de la red. Una cosa que causará problemas de visualización con shapefiles de este tamaño es si hay una cantidad extrema de vértices, como en una red de arroyos. La única solución que he encontrado para esto es la creación de un script de Python para hacer las definiciones de capa sobre la marcha por lo que sólo estoy dibujando unos pocos a la vez. Otra cosa sería actualizar la memoria gráfica y la tarjeta gráfica de tu ordenador.

0voto

Skye Giordano Puntos 141

Crear índice espacial. Eso hará que el renderizado sea más rápido.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X