相关疑难解决方法(0)

针织图的动态高度和宽度

在knitr中,可以通过在块选项中指定它来指定绘图的大小.

例如:

```{r, fig.width=9,fig.height=3}
plot(x)
```
Run Code Online (Sandbox Code Playgroud)

我希望能够在变量的基础上动态调整图形的高度和宽度x.假设x是data.frame:

x <- data.frame(x=factor(letters[1:3]),y=rnorm(3))
Run Code Online (Sandbox Code Playgroud)

例如,我想说我想将fig.height调整为等于 length(unique(x$x))

r knitr

30
推荐指数
2
解决办法
4673
查看次数

在knitr中打印动态大小的图表列表

我希望能够在knitr中打印出非预定的情节列表.我能够做到这一点,但也有留下来化解一些皱纹.即:

1)如何在每个绘图之前的每个页面上抑制列表索引(如[[2]])?使用echo = FALSE不会做任何事情.

2)是否可以在渲染时为每个绘图设置大小?我已经尝试在块之外设置一个大小变量,但这只允许我使用一个值而不是每个绘图的不同值.

我问这是一个问题,因为他们似乎在讲同一课,即制作一份情节清单.

一些示例代码:

\documentclass{article}
\usepackage[margin=.5in, landscape]{geometry}
\begin{document}

<<diamond_plots, echo = FALSE, results = 'hide'>>==
library(ggplot2)

diamond_plot = function(data, cut_type){
  ggplot(data, aes(color, fill=cut)) + 
    geom_bar() +
    ggtitle(paste("Cut:", cut_type, sep = ""))
}

cuts = unique(diamonds$cut)
plots = list()
for(i in 1:length(cuts)){
    data = subset(diamonds, cut == cuts[i])
    plots[[i]] = diamond_plot(data, cuts[i])
}
height = 3
@

<<print_plots, results='asis', echo=FALSE,  fig.width=10, fig.height=height>>=
plots
@
\end{document}
Run Code Online (Sandbox Code Playgroud)

这些图的PDF看起来像这样:

在此输入图像描述

r ggplot2 knitr

9
推荐指数
1
解决办法
1173
查看次数

标签 统计

knitr ×2

r ×2

ggplot2 ×1