关注HTML编织 - RMarkdown包括空格块

时间:2015-05-20 16:20:17

标签: html r knitr raster r-markdown

我正致力于使用Raster和RMarkdown记录一些空间数据的可视化,但我遇到的问题是每个图上方都有一堆负空间。这是RMarkdown代码(稍微简化):

```{r global_options, include=FALSE}
knitr::opts_chunk$set(fig.width=12, fig.height=8, echo=FALSE,
                      warning=FALSE, message=FALSE)
```

```{r r-packages}
library(maptools)
library(raster)
library(rgdal)
```
###Description of data
Data are taken from the National Land Cover Database - 2011 and represent land cover at a 30m X 30m resolution.
location of data: [National Land Cover Database - 2011]('http://gisdata.usgs.gov/TDDS/DownloadFile.php?TYPE=nlcd2006&FNAME=nlcd_2006_landcover_2011_edition_2014_10_10.zip')

###Import raster file for US landcover and shapefile for state borders and counties

```{r Import raster file for us landcover}
rfile <- '~/Documents/Data/nlcd_2006_landcover_2011_edition_2014_10_10/nlcd_2006_landcover_2011_edition_2014_10_10.img' #location of raster data
r1 <- raster(rfile)

##Import shapefile for state borders
statepath <- '~/Documents/Data/'
setwd(statepath)
shp1 <- readOGR(".", "states")
##Transform shapefile to fit raster projection
shp1 <- spTransform(shp1, r1@crs)
##Remove hawaii and alasks which are not in raster image
shp1.sub <- c("Hawaii","Alaska")
states.sub <- shp1[!as.character(shp1$STATE_NAME) %in% shp1.sub, ]

##Import county data
#data source: ftp://ftp2.census.gov/geo/tiger/TIGER2011/COUNTY/tl_2011_us_county.zip
countypath <- '~/Documents/Data/tl_2011_us_county'
setwd(countypath)
shp2 <- readOGR(".", "tl_2011_us_county")
##Transform shapefile to fit raster projection
counties <- spTransform(shp2, r1@crs)
counties.sub <- counties[as.character(counties$STATEFP) %in% states.sub$STATE_FIPS, ]
```
Raster plot of US with state and county border overlays
```{r plot landcover with state borders}
#Plot state borders over raster
plot(r1)
plot(counties.sub, border = "darkgrey",lwd=.65,add=T)
plot(states.sub,border = "darkblue",add=T)
```
Raster cropped and masked to extent of California
```{r crop raster to a single state (California)}
shp.sub <- c("California")
shp.ca <- states.sub[as.character(states.sub$STATE_NAME) %in% shp.sub, ]

r1.crop   <- crop(r1, extent(shp.ca))

plot(r1)
```

一切运行正常,但当降价输出到HTML时,也会包含一堆空格。 [这是发布的RPub] (现已解决)。 (http://rpubs.com/pbwilliams/80167)。我认为这是一个光栅问题,因为我没有这个数字问题,例如,在ggplot中。

我已经能够通过缩小图像来暂时解决这个问题,但是无论何时我将图片放大到合理的位置,都会增加额外的空间。如果有人知道如何解决这个问题,我们将不胜感激。

1 个答案:

答案 0 :(得分:1)

正如评论中所建议的那样,使用chunk选项fig.keep = 'last'应该解决这个特殊问题,因为每个代码块似乎有两个图,第一个是空白图(你只想保留最后一个)一个)。