2014-12-21 4 views
10

Раньше я использовал knitr в R для получения отчетов из формата .Rnw. В своих отчетах я часто положить много участков и манипулировать их размеров с использованием куска optios и т.д .:r knitr chunk опции для фигуры высота/ширина не работают

\begin{figure}[h!] 
\centering 
<<fig.width=6, fig.height=4, out.width='.89\\linewidth'>>= 

plot(mtcars) 

@ 
\caption{} 
\end{figure} 

Это было несколько месяцев назад. Затем я перешел в другую среду, переустановил R, и эти параметры больше не работают - размер графика остается неизменным на выходе PDF!

Здесь представлены все строки кода, касающиеся любых настроек параметров. Я с нетерпением жду любых предложений, что я делаю неправильно.

<< >>= 
library(knitr) 
knitr::opts_chunk$set(echo=F, eval=T, message = F, warning=F, cache = F, fig=TRUE) 
@ 

\begin{figure}[h!] 
\centering 
<<fig.width=10, fig.height=3, out.width='.89\\linewidth', fig=TRUE, echo=F>>= 
plot(mtcars) 
@ 
\caption{mtcars plot} 
\end{figure} 

Точно такой же результат появляется, когда я использую <<fig.width=10, fig.height=3, fig=TRUE, echo=F>>=.

Информация Сессия

> sessionInfo() 
R version 3.1.1 (2014-07-10) 
Platform: x86_64-pc-linux-gnu (64-bit) 

locale: 
[1] LC_CTYPE=en_US.UTF-8  
[2] LC_NUMERIC=C    
[3] LC_TIME=pl_PL.UTF-8  
[4] LC_COLLATE=en_US.UTF-8  
[5] LC_MONETARY=pl_PL.UTF-8 
[6] LC_MESSAGES=en_US.UTF-8 
[7] LC_PAPER=pl_PL.UTF-8  
[8] LC_NAME=C     
[9] LC_ADDRESS=C    
[10] LC_TELEPHONE=C    
[11] LC_MEASUREMENT=pl_PL.UTF-8 
[12] LC_IDENTIFICATION=C  

attached base packages: 
[1] splines stats4 stats  graphics grDevices 
[6] utils  datasets methods base  

other attached packages: 
[1] bootstrap_2014.4  dplyr_0.3.0.9000  
[3] het.test_0.1   vars_1.5-2   
[5] lmtest_0.9-33  urca_1.2-8   
[7] strucchange_1.5-0 sandwich_2.3-2  
[9] zoo_1.7-11   MASS_7.3-34   
[11] VGAM_0.9-6   ggplot2_1.0.0  
[13] manipulate_0.98.1078 

loaded via a namespace (and not attached): 
[1] assertthat_0.1 colorspace_1.2-4 DBI_0.3.1  
[4] digest_0.6.4  evaluate_0.5.5 formatR_1.0  
[7] grid_3.1.1  gtable_0.1.2  htmltools_0.2.6 
[10] knitr_1.7  labeling_0.3  lattice_0.20-29 
[13] lazyeval_0.1.9 magrittr_1.0.1 munsell_0.4.2 
[16] parallel_3.1.1 plyr_1.8.1  proto_0.3-10  
[19] Rcpp_0.11.3  reshape2_1.4  rmarkdown_0.3.9 
[22] scales_0.2.4  stringr_0.6.2 tools_3.1.1  
[25] yaml_2.1.13  

PDF outpout скриншот (неизменного размера)

enter image description here

+0

Try без 'out.width =» 0,89 \\ linewidth''. – MYaseen208

+0

Я сделал (я пробовал десятки комбинаций: <) - используя '' '<< fig.width = 10, fig.height = 3, fig = TRUE, echo = F >> =' '' не производит никаких изменений. –

+0

Что делает опция 'fig = TRUE' chunk? Разве это не дает вам предупреждение? Кажется, что осталось от более синтаксиса 'Sweave' ... –

ответ

9

Я уверен, что вы были с помощью Sweave вместо knitr. Если вы использовали RStudio (вы не сказали, но я так думаю), вам необходимо изменить глобальный параметр (или вариант проекта) на knitr:

use knitr in RStudio