R markdown ... размер куска для управления размером фигуры в knitr - проблема с размером текста - PullRequest
0 голосов
/ 12 декабря 2018

Я вяжу уценку R для создания отчета, и все работает отлично, как и ожидалось, за исключением того, что в последнем блоке я создаю серию ограненных скрипичных графиков (в цикле) и использую параметры фрагментов ...

{r facet plots, Tidy=TRUE, echo = FALSE, include=TRUE, warning=FALSE, fig.height = 40, fig.width = 30}

для управления размером сюжета.Это прекрасно работает для графиков, но текст оси на графиках становится крошечным !!Как показано ниже:

enter image description here

Вызов ggplot ...

ggplot(FctPlotData, aes(x=TimeGroup, y=OverallTAT)) + 
  geom_violin(trim = FALSE, fill='lightgrey', color="darkblue") +
  xlab("Time of Day (groupings in 4 hour intervals)") +
  ylab("Turnaround Time") + 
  facet_wrap(~(DoW), ncol = 1, scales = "free_y") +
  ggtitle(paste0(spTst, " Turnaround Breakdown by Day of Week and Time of Day")) + 
  theme_pc()

Я использую собственную тему - theme_pc() -установить общий вид для всех моих графиков (с указанным в них размером текста), и это работает во всех других контекстах, но не для этого?

Я попытался решить эту проблему, включив

knitr::opts_chunk$set(results = 'asis')

в чанке верхнего уровня (настройка), но это не помогло, есть ли у кого-нибудь какие-либо идеи о том, как получить метки с разборчивым размером?

Ответы [ 2 ]

0 голосов
/ 27 июня 2019

Я нашел решение этой проблемы ...

Вместо использования fig.width и fig.height в заголовке блока вы можете использовать out.width = "NN%", как показано ниже

chunk header

Затем вы получите масштабированный текст оси с рисунком;это масштабирование, кажется, не относится к заголовку фигуры - но я могу жить с этим: -)

knitted ggplot output

Я также обнаружил, что вы можете комбинироватьout.width с fig.height, чтобы получить больше контроля над пропорциями участков:

enter image description here

0 голосов
/ 12 декабря 2018

Я вставлю этот ответ из вопроса, размещенного здесь: Изменить размер заголовка осей и меток в ggplot2

"Вы можете изменить размер оси и размер метки с аргументами axis.text= иaxis.title= в функции theme(). Если вам нужно, например, изменить только размер заголовка оси x, используйте axis.title.x=.

g+theme(axis.text=element_text(size=12),
    axis.title=element_text(size=14,face="bold"))

. Есть хорошие примеры настройки различных параметров темы ().на странице ggplot2 .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...