Display de estadísticas de campos de atributos en un plugin de QGIS

En un post pasado se refirió la manera de cómo obtener los valores máximos, mínimos y el número de registros para los campos obtenidos mediante una QgsFieldComboBox en un plugin de QGIS. Como la verificación del funcionamiento del código se hizo a través de la Python Console, hoy vamos a mostrar cómo incorporar esos resultados en los objetos que Qt tiene disponibles para desplegar (display) datos.

El elemento más conveniente para ello es una QTextBrowser y se programa en el slot principal. Solo se requiere instanciar el objeto y usar su método ‘setText’ para la visualización. Por otra parte, el formato avanzado usado en el código, en lugar del convencional, permite una mayor fácilidad en la adecuación de la visualización desde la Python Console a la Text Browser del Plugin.

El extracto del código es el siguiente:

.
.
.
    def sql_function(self):
        
        vlayer = self.wcbL.currentLayer()
        n = vlayer.featureCount()
        field_name = self.wcbF.currentText()
        idx_field = vlayer.pendingFields().fieldNameIndex(field_name)
        
        message = "{} features in {}".format(n, vlayer.name())
        message += "\nminimum of {} is {}".format(field_name, vlayer.minimumValue(idx_field))
        message += "\nmaximum of {} is {}".format(field_name, vlayer.maximumValue(idx_field))
        
        txtBrw = self.dlg.textBrowser
        txtBrw.setText(message)
.
.
.

Una vez editado el slot, recargado el plugin y ejecutado, se obtiene este resultado para el campo rast_value de random_points.

plugin_sql

Esta entrada fue publicada en Plugin, PyQGIS, QGIS, SIG, Software Libre. Guarda el enlace permanente.

Una respuesta a Display de estadísticas de campos de atributos en un plugin de QGIS

  1. Pingback: Plugin de QGIS para producir vectoriales por selección de rasgos con base en consultas tipo SQL | El Blog de José Guerrero

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s