rknitrogr

In R and knitr, can I suppress the message of readOGR?


I'm building small report using R & knitr, sending the output to pdf.

I'm using several shape files in my analysis and whenever I use readOGR function of rgdal package I get information on what is being read, for instance:

OGR data source with driver: ESRI Shapefile 
Source: "__PATH_HERE__", layer: "__NAME__OF__LAYER__HERE__"
with 148 features and 5 fields
Feature type: wkbPolygon with 2 dimensions

Normally, it's useful thing to have.. but unfortunately it also prints out in my pdf output.

I tried setting knitr's chunk options to echo=FALSE, message=FALSE but unfortunately it did't help.

Any better solution to that?


Solution

  • Have you tried setting verbose = FALSE in the readOGR function itself?

    e.g.

    > dsn <- system.file("vectors", package = "rgdal")[1]
    > cities <- readOGR(dsn=dsn, layer="cities")
    OGR data source with driver: ESRI Shapefile 
    Source: "C:/Users/sohanlon/Dropbox/R/R64_Win_Libs/rgdal/vectors", layer: "cities"
    with 606 features and 4 fields
    Feature type: wkbPoint with 2 dimensions
    # Set verbose = FALSE
    > cities <- readOGR(dsn=dsn, layer="cities" , verbose = FALSE)
    

    The relevant knitr chunk, then, could be:

    ```{r, echo=FALSE, message=FALSE}
    library(rgdal)
    dsn <- system.file("vectors", package = "rgdal")[1]
    cities <- readOGR(dsn=dsn, layer="cities", verbose=FALSE)
    ```