Размер фигуры в R Markdown
Я старался быть осторожным и тщательным, читать различные вещи в сети о том, как форматировать цифры в R Markdown. Они построены правильно, но кажется, что их размер нельзя контролировать.
Во-первых, есть основы, такие как:
```{r Fig1, echo=FALSE, fig.height=5, fig.width=15}
x1 = rnorm(100)
x2 = runif(100)
x3 = rbeta(100, 1, 1,)
par(mfrow=c(1,3), mar=c(4,4,4,1), oma=c(0.5,0.5,0.5,0))
qqnorm(x1)
qqnorm(x2)
qqnorm(x3)
```
Затем я попробую немного больше с:
```{r Fig1b, echo=FALSE, fig.height=5, fig.width=15, out.retina=1}
```
И если я попытаюсь соответствовать размеру другой простой фигуры, различия будут заметны. Например:
```{r Fig2, echo=FALSE, fig.height=5, fig.width=5, retina=1}
par(mfrow=c(1,1), mar=c(4,4,4,1), oma=c(0.5,0.5,0.5,0))
qqnorm(x1)
```
Интересно, что с этим можно сделать - т.е. как сделать все фигуры равными по размеру? В частности, если фигуры, такие как фиг.1 и фиг.1b, уменьшены, как отрегулировать размер простой фигуры, как на фиг.2?
Спасибо!
1 ответ
Мне кажется, что вы хотите, чтобы Fig2 был такого же размера, как одна панель на Fig1. Если вы действительно хотите, чтобы они были одинакового размера, я бы предложил использовать тот же fig.width
и то же значение для mfrow
,
```{r Fig1, echo=TRUE, fig.height=5, fig.width=15}
x1 = rnorm(100)
x2 = runif(100)
x3 = rbeta(100, 1, 1,)
par(mfrow=c(1,3), mar=c(4,4,4,1), oma=c(0.5,0.5,0.5,0))
qqnorm(x1)
qqnorm(x2)
qqnorm(x3)
```
```{r Fig2, echo=TRUE, fig.height=5, fig.width=15}
par(mfrow=c(1,3), mar=c(4,4,4,1), oma=c(0.5,0.5,0.5,0)) # same, could omit
plot.new() # empty plot
qqnorm(x1)
plot.new() # empty plot
```
И если вы хотите, чтобы Рис2 занимал столько же места на визуализированном документе, что и Рис1, попробуйте это где par(op)
сбрасывает параметры построения.
```{r Fig1, echo=TRUE, fig.height=5, fig.width=15}
x1 = rnorm(100)
x2 = runif(100)
x3 = rbeta(100, 1, 1,)
op <- par(mfrow=c(1,3), mar=c(4,4,4,1), oma=c(0.5,0.5,0.5,0))
qqnorm(x1)
qqnorm(x2)
qqnorm(x3)
par(op)
```
```{r Fig2, echo=TRUE, fig.height=5, fig.width=15}
op <- par(mfrow=c(1,1), mar=c(4,4,4,1), oma=c(0.5,0.5,0.5,0))
qqnorm(x1)
par(op)
```