使用 knitr
和 markdown
将 Rmd 文件编织到 Markdown 的包,然后 html 会以 ggplot2 图形出现在最终 html 文件中的方式产生一些意外行为。
例如使用下面的Rmd文件diamond.Rmd
# ggplot2 graph shows up fainter, and text smaller
```{r echo=FALSE, message=FALSE, warning=FALSE}
opts_chunk$set(fig.width=18, fig.height=10)
require(ggplot2)
```
***
# Simple Plot
```{r echo=FALSE, message=FALSE, warning=FALSE}
data(diamonds)
g <- ggplot(diamonds, aes(carat, depth, colour=color)) + geom_point() + facet_wrap(~cut)
g
```
用这个文件 knit.R
require(markdown)
require(knitr)
knit('diamonds.Rmd')
markdownToHTML('diamonds.md', 'diamonds.html', options=c('base64_images'))
browseURL(paste('file://', file.path(getwd(), 'diamonds.html'), sep=''))
我已经在 html 文件中截取了该图的屏幕截图并将其包含在下面(有没有更好的方法来显示这一点?):
html 文件内的绘图更亮,即颜色不那么深。
此外,绘图上的文本,包括轴标签和刻度线标签更小更亮,使它们很难阅读。
如果您查看直接从 R 创建的图,您会发现它没有这些问题。
我猜这是我的图形设备或 knitr 使用的图形设备的一些问题。
有没有办法强制最终出现在 html 文件中的绘图保持原始绘图外观,即保持更暗并具有更大的文本?
最佳答案
正如@Ramnath 所建议的:
如果您想保留相同的图形大小但具有更高的像素大小,请使用:fig.width = 9, fig.height = 5, dpi = 144
默认 dpi 为 72,这将为您提供相同大小但具有更大像素和文本的绘图。
关于r - 使用 markdown 中的 knitr 后的图表细微变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11633756/