Я думаю, что часть этого вопроса касается пакета sjPlot, но я обнаружил, что пакет довольно гибкий и отражает ggplot, поэтому я надеюсь, что у кого-то есть ответ.
Если вы свяжете Код, который я написал ниже (используя mtcars) в PDF, вы увидите, что эти два графика не совпадают. Оставьте в стороне, что я умышленно создал ситуацию (делая метки по осям Y разных размеров и бессмысленных моделей), но как я могу получить два отдельных графика одинакового размера (несмотря на то, что метки по оси Y имеют разную длину)? Может быть, лучшее, что я могу сделать, - это набрать их по z и убедиться, что ни одна из меток оси y не превышает определенную длину (не идеальную, но и не ужасную).
Кроме того, я тоже пытаясь сделать так, чтобы между двумя графиками не было (или минимально) вертикального пустого пространства (чтобы они почти перекрывались). Поэтому первым делом будет удаление меток (оценок) оси X и заголовка оси X и сохранение их для последнего графика (что я сделал), но вы все равно можете видеть, что это выглядит как СП. Как я могу сделать лучше?
У меня есть около 10 графиков величины эффекта в двух столбцах (один для математики, один для английского языка sh, отображение результатов PCA и т. Д. c.), Но я думаю, что проблема можно перевести на два графика, которые вы получите из Markdown.
Большое спасибо!
---
title: "Untitled"
author: "Effect Sizes"
date: "1/25/2020"
output:
pdf_document: default
---
```{r echo = FALSE, include=FALSE}
library(tidyverse)
library(lme4)
library(sjPlot)
library(sjlabelled)
```
```{r effect size dem, echo=FALSE, warning=FALSE, message=FALSE, fig.height = 1.1, fig.width = 4, fig.show="hold", fig.align="center"}
mpg <- lmer(mpg~wt + gear + carb + (1|cyl), mtcars, na.action = 'na.exclude', control = lmerControl(optimizer = "nloptwrap", calc.derivs = FALSE), REML = FALSE)
hp <- lmer(mpg~hp + (1|cyl), mtcars, na.action = 'na.exclude', control = lmerControl(optimizer = "nloptwrap", calc.derivs = FALSE), REML = FALSE)
plot_model(mpg, type = "std", title = "")+
theme(axis.text.x = element_blank(),
axis.title.x = element_blank())+
xlab("")+
ylim(-1,1)
labels <- c(hp = "horse power")
plot_model(hp, type = "std", title = "", axis.labels = labels)+
xlab("")+
ylim(-1,1)
```