Usando QGIS versión 1.7.
Tengo un archivo de texto sin formato que enumera un conjunto de valores rgb contra un código. Quiero usar esta tabla de colores para colorear una capa de polígono asignando uno de sus campos de atributos ('map_symb') a un código en el archivo de texto.
la tabla de colores es muy larga y se ve así:
$ head gsv1Msymbology.txt
MAPCODE RED GREEN BLUE
Oc 143 255 255
WAT 255 255 255
Qa 244 250 202
Qdl 195 239 218
Na 248 255 238
Qd2 227 255 190
Qxw 248 255 238
Qns 255 148 83
Qn 255 202 190
....
Quiero hacer coincidir mi atributo 'map_symb' con un valor en MAPCODE, y usar los valores RGB correspondientes para colorear los polígonos.
¿Hay una manera gui de hacer esto?
Respuestas:
Puede usar Python con el módulo ElementTree:
El archivo de estilo generado por este script es (y funciona):
También puede usar el módulo shapefile ([shapefile]) 1 para shapefiles con columnas RGB
y entonces...
fuente
En una versión posterior de QGIS es más fácil realizar la tarea solicitada.
Simplemente abra Propiedades de capa, pestaña Estilo y asegúrese de que esté seleccionado Símbolo único. Haga clic en el cuadro junto al color "Relleno" y elija "Editar".
Editará el color base de sus bases poligonales en colores RGB presentes en la tabla de datos, con un color de borde constante (puede aplicar el mismo criterio si es necesario).
Después de presionar "Editar" simplemente ponga los 3 nombres de columnas RGB de su tabla usando la siguiente expresión:
color_rgb ("columna R", "columna G", "columna B")
Ok, aplica y listo.
Si necesita etiquetar y caracterizar los datos de la misma manera (por ejemplo, para construir una leyenda), simplemente use la opción Categorizada y aplique la misma expresión al Símbolo y a la Columna, identificados en la imagen de abajo.
fuente
Si desea clasificar algunos datos vectoriales de forma repetible, esto es lo que puede hacer:
fuente