Cómo integrar R en QGIS

Una de las características más interesantes de QGIS es que permite ampliar sus funcionalidades combinándose con aplicaciones adicionales como SAGA, GRASS o R.

Como comentábamos en entradas anteriores, R es un lenguaje y un entorno de programación para análisis estadístico que se convierte, a gran velocidad, en una herramienta de referencia para el análisis espacial y la geoestadística. Su combinación con QGIS permite añadir una gran variedad de métodos de análisis estadísticos, visualización y almacenamiento rápido de resultados, automatizar procesos complejos y desarrollar de manera sencilla nuevas funcionalidades.

El propósito de este post es mostrar cómo podemos integrar R con QGIS 3, para poder ejecutar algoritmos implementados en R (R script) desde QGIS y descargar scripts ya creados para incorporarlos a nuestro SIG.

Configuración de R en QGIS

En QGIS existe un complemento denominado Processing R Provider, desarrollado por North Road, que permite usar scripts de R dentro de QGIS.

Los pasos para configurarlo correctamente dentro de QGIS se relatan a continuación:

Primero, dentro de QGIS, en el menú de la barra superior pulsamos en Complementos → Administrar e instalar complementos…

En la barra de búsqueda introducimos el nombre Processing R Provider, seleccionamos el complemento y pulsamos en instalar.

R en QGIS - Processing R Provider

A continuación, en el menú de la barra superior de QGIS, seleccionamos Configuración → OpcionesR en QGIS - configuración

En la ventana emergente debemos movernos a Procesos → Proveedores → R

En esta ventana, es muy importante que rellenemos correctamente la información correspondiente a todos los elementos de la siguiente manera:

Package repository

Introduce: https://cran.at.r-project.org/

R folder

Carpeta donde tenemos instalado R. Es muy importante especificar solo la carpeta y no el binario.Por ejemplo:

C:\Program Files\R\R-3.5.1

Un truco para conocer dónde está, es comprobar la ruta desde RStudio. Se trata de la misma carpeta en la se instalan las bibliotecas de R. En RStudio pulsamos sobre la ventana Install, en el botón Install Packages y observamos la ruta.

R scripts folder

Puede ser cualquier directorio de nuestro ordenador.

Es el directorio de almacenamiento de los R Scripts dentro de QGIS3. Es importante recordar la ubicación de esta carpeta, ya que QGIS solo mostrará las herramientas desarrolladas que se encuentren dentro de ella. Un ejemplo es la siguiente ruta:

C:/User/Diana/QGIS/QGIS3/default/processing/rscripts

Pero también puede ser la que nosotros deseemos.

Use 64 bit version Activado

Si tienes una versión de R de 64 bits, puedes marcar esta casilla. Así, se instalarán las versiones de 32 y 64 bits.

Use user library folder instead of system libraries Activado
User library folder Se debe configurar el directorio rlibs dónde se instalarán las bibliotecas R para QGIS. Este directorio, rlibs, se suele encontrar en la carpeta processing de la instalación de QGIS3.

Por ejemplo:

C:/User/Diana/QGIS/QGIS3/default/processing/rlibs

Ahora, si has configurado todo correctamente, ya podrás utilizar scripts construidos con código R dentro de QGIS siempre que los sitúes en tu carpeta rscripts (en la ruta que aparece en la configuración del proveedor denominada R Folder).

Descarga de R scripts de un repositorio público

En algunas ocasiones necesitaremos utilizar herramientas sencillas que otros usuarios ya han desarrollado y compartido en repositorios públicos. El procedimiento para reutilizar estos R Scripts es muy sencillo.

Nota: Recuerda comprobar siempre las licencias de las herramientas que descargues y nombrar al autor en caso necesario.

A continuación, vamos a mostrar la manera de descargar los algoritmos disponibles en el repositorio Github de QGIS  e introducirlos y utilizarlos dentro de QGIS.

Primero, ve al enlace del repositorio en https://github.com/qgis/QGIS-Processing/tree/master/rscripts, descarga todo el repositorio  en tu ordenador como un archivo .zip (Clone or Download → Download Zip) y descomprímelo.

De todos los archivos descomprimidos, únicamente necesitaremos los archivos dentro de la carpeta con nombre rscrips. El resto puede eliminarse. Ve a la ruta de R Script Folder (rscripts) y copia los archivos que acabas de de descargar.

Inicia QGIS y, ¡listo! Ahora tendrás muchos Grupos nuevos en tu Caja de Herramientas de Procesos con todos los algoritmos que has descargado listos para usarse.

R en QGIS - algoritmos

Si estás interesado a aprender a trabajar con R y realizar análisis espacial, geoestadística, crear tus propios scripts desde QGIS y mucho más, inscríbete ya en nuestro curso online de R y SIG.

6 comentarios en «Cómo integrar R en QGIS»

  1. ¡Hola Diana!
    ¡Gracias por el post!
    He seguido todos los pasos que indicas para la configuracion, pero no consigo que me funcionen los comandos. Por ejemplo, al ejecutar Montecarlo- Carlo Spatial Randomness me da el siguiente mensaje de error: Error in library(«sf») : there is no package called ‘sf’. Y la verdad es que no se donde puede estar el error. Agradeceria algo de ayuda.
    Gracias de antemano.
    Un saludo

  2. Hola Diana
    Gracias por el post ha sido de gran ayuda para mi.
    Quisiera saber, si es posible al crear un plugin, poder vincular un push button con un script de R.

    Saludos.
    Michael

  3. Hola Diana, excelente el tutorial pero tengo problemas a la hora de tratar de abrir la herramienta semivariograma o kriging ordinario, se abre una ventana con la siguiente información:
    Error al ejecutar el algoritmo
    Este algoritmo no se puede ejecutar:-(
    R folder is not configured. Please configure it before runnig R scripts
    Si me puedes ayudar te voy agradecer es para hacer los analisis geoestadisticos para mi tesis.
    Atte
    Daniel

    • Hola Daniel, gracias por tu comentario.
      El error que estás indicando se da cuando la ruta de instalación de R que introduces en la configuración del complemento en R Folder es incorrecta. La carpeta correcta generalmente es una carpeta que tiene la versión de R en su nombre. Dentro de ella hay otras carpetas como «bin», «doc», «etc»…
      Es muy importante que especifiques solo la carpeta y no el binario.
      Si sigues obteniendo error, cópiame las rutas que estás empleando en la configuración y lo solucionamos.
      Un saludo.

  4. Hola Diana,
    Mu útil tu tipp para poder complementar QGIS con R.
    Eso si, tuve una complicación en hacer correr los scripts, ya que no me los descargaban. Finalmente, lo logre al cambiar el package repository a: https://cran.at.r-project.org/. De esa manera me funcionó, sin embargo, no sé si esto solo me ocurrió a mi, o si es algo general. Asimismo, me ocurre que los resultados de los gráficos me aparecen en la carpeta temporal, en vez como una ventana aparte en QGIS. Tienes alguna idea, de que por qué ocurre esto?

    Saludos,
    Felipe

    • ¡Hola Felipe!
      Gracias por tu comentario. Yo he trabajado con package repository igualado a ambas urls (https://cran.at.r-project.org/ y https://www.r-project.org/) y no he tenido problemas con ninguno. Pero te agradezco mucho que compartas conmigo esta información para tenerla en cuenta en el post.
      Los resultados de los gráficos se guardan siempre en archivos temporales al menos que se indique a través de un parámetro otra carpeta de salida. Y no están preparados para abrirse en una nueva ventana de QGIS, sino que aparecen en el visor de resultados para que puedas acceder a ellos más fácil. Para abrir el Visor de Resultados de QGIS debes seleccionar:
      Procesos -> Visor de Resultados
      o presionar las teclas de atajo Ctr + Alt + R

      Saludos.
      Diana Alonso

Los comentarios están cerrados.