У меня есть R-фрагмент knitr, в котором несколько ggplot2 расположены на одной фигуре с использованием cowplot и помечены с помощью меток cowplot.
Я хотел бы сослаться на отдельные графики на рисунке, то есть 1A, 1B, 1C, в моем тексте.
Я пробовала использовать вариант fig.subcap knitr, но потом получаются дополнительные надписи: (a), (b), (c). Я не хочу использовать (a), (b), (c), а только мои ярлыки коровьего графика, так как ярлыки коровьего графика легко меняются (положение, наименование и т. Д.), А упорядочивание подфигур (мой индивидуальный ggplot2s) с коровьим графиком легко.
Я пробовал fig.subcap, но потом получаю нежелательные метки (a), (b), (c) в позициях, которые я не могу изменить Chunk-options.
```{r figure, fig.cap= 'myFigure', fig.subcap=c('A', 'B', 'C')}
```
Я получаю, как и ожидалось, (a) A, (b) B, (c) C под каждым отдельным участком. Мне нужны метки A, B, C коровьего графика рядом с каждым отдельным участком.
Я попытался создать пустые метки подзаголовка
---
title: "t"
author: "a"
date: "d"
site: bookdown::bookdown_site
documentclass: paper
link-citations: yes
output:
bookdown::pdf_book:
extra_dependencies: subfig
---
```{r}
library(ggplot2)
library(cowplot)
g1 = ggplot()+geom_line(aes(x = c(1, 2), y = c(1, 2)))
g2 = ggplot()+geom_line(aes(x = c(1, 2), y = c(1, 2)))
g3 = ggplot()+geom_line(aes(x = c(1, 2), y = c(1, 2)))
cp = plot_grid(g1, g2, g3, nrow = 3, align = "hv", labels = c('A', 'B', 'C'))
```
```{r fi, fig.cap= 'myFigure', fig.subcap=c('', '', '')}
cp
```
and then cross-reference in the text with
\@ref(fig:fi1), \@ref(fig:fi2), \@ref(fig:fi2)
но это не работает, поскольку он замечает, что я включаю только один коровий график (cp).
Я также попытался включить пустые участки в дополнение к коровьему графику:
---
title: "t"
author: "a"
date: "d"
site: bookdown::bookdown_site
documentclass: paper
link-citations: yes
output:
bookdown::pdf_book:
extra_dependencies: subfig
---
```{r}
library(ggplot2)
library(cowplot)
g1 = ggplot()+geom_line(aes(x = c(1, 2), y = c(1, 2)))
g2 = ggplot()+geom_line(aes(x = c(1, 2), y = c(1, 2)))
g3 = ggplot()+geom_line(aes(x = c(1, 2), y = c(1, 2)))
cp = plot_grid(g1, g2, g3, nrow = 3, align = "hv", labels = c('A', 'B', 'C'))
```
```{r f, fig.cap= 'myFigure', fig.subcap=c('', '', '')}
cp
plot.new()
plot.new()
```
Then I can use the empty plots as substitutes
for the subfigures in the cowplot and cross-reference
them with \@ref(fig:f1), \@ref(fig:f2),
\@ref(fig:f2).
Но выравнивание коровьего графика (cp) не дано, и я все равно получаю нежелательный (a) из подфигура.
subfig
для справок, но не для композиции графиков. - person Ralf Stubner   schedule 17.08.2019