Я пытаюсь создать .pdf и .doc для создания отчета из следующего кода.Всего есть две проблемы:
с выходом .pdf R работает, но как только я связываю с pdf, он запускает весь код и генерирует файл .pdf с 0 кб.Я не могу открыть этот файл.
.doc output В файле .doc я хочу изменить макет страниц и хочу использовать разрыв страницы, но он не работает.Я также хочу написать код для макета страницы (альбомной или портретной), но он не работает.Так как я могу создать только портретную страницу, но таблица, которую я создал с помощью flextable, не подходит для автоматической подгонки на странице.
Я установил MIKTEX, но затем таблица и график плавают в документах.так что я удалил его.Я не понимаю, что такое «Каир из памяти» по ошибке.
---
title: "Bla bla bla"
author: "Kishan"
date: "`r format(Sys.time(), '%d.%m.%Y')`"
output:
pdf_document: default
word_document: default
html_document: default
---
# Global option --------
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE, messAgegr = FALSE,
comment=FALSE, warning=FALSE,
results = "asis", dpi=600,
fig.width= 15, fig.height=8 ,
dev = "cairo_pdf"
)
options(kableExtra.latex.load_packages=TRUE,
kableExtra.auto_format=FALSE)
library(tidyr)
library(dplyr)
library(janitor)
library(ggplot2)
library(readxl)
library(knitr)
library(kableExtra)
library(tinytex)
library(flextable)
options(tinytex.verbose = TRUE)
ggpt <- theme_bw() +
theme(#text=element_text(size=rel(1.7)),
axis.title.x=element_text(size=rel(1.5)),
axis.title.y=element_text(size=rel(1.5)),
axis.text.x=element_text(size=rel (1.5)),
axis.text.y=element_text(size=rel (1.5)),
strip.text.x=element_text(size=rel(1.2)),
strip.text.y=element_text(size=rel(1.2)),
legend.text=element_text(size=rel (1.3)),
legend.title=element_text(size=rel(1.3)),
plot.title=element_text(size=rel (1.5)))
doc_type <- knitr::opts_knit$get("rmarkdown.pandoc.to")
if(is.null(doc_type)) {
doc_type <- "raw"
}
```
```{r}
stdtabl <- function(data, caption=NULL, format="raw") {
if(format %in% c("latex", "html")) {
data %>%
knitr::kable(booktabs=TRUE,
format=format,
digits=0,
caption=caption) %>%
kable_styling(bootstrap_options=c("striped", "hover", "condensed", "responsive"),
full_width=FALSE,
font_size=12,
fixed_thead=TRUE,
position="center") %>%
column_spec(column=1,
bold=TRUE)
} else if(format == "docx") {
## use flextable as kableExtra does not handle Word documents
data %>%
flextable() %>%
theme_zebra() %>%
autofit() %>%
font(fontname="Calibri")
} else { "raw"
data %>%
knitr::kable()
}
}
```
```{r}
mobitab <- EQBase %>%
tabyl(Zeitpunkt, eq5d5lMobil) %>%
adorn_percentages("row") %>%
adorn_pct_formatting(digits = 0 ) %>%
adorn_ns(position = "front") %>%
select(Zeitpunkt,'mob_1','mob_2','mob_3','mob_4','mob_5','V1')
stdtabl(mobitab, caption= 'sdsdyfwerfew', format=doc_type)
```
```{r}
barplotmob <- EQBase %>%
mutate(eq5d5lMobil= factor(eq5d5lMobil, levels = c("","mob_5", "mob_4", "mob_3", "mob_2", "mob_1"))) %>%
group_by(VisitID, eq5d5lMobil) %>%
summarise(Count= n()) %>%
mutate(Percentage = Count/sum(Count)*100, round(Percentage, digits=0)) %>%
mutate(lab_ypos = 100-(cumsum(Percentage) - 0.5 * Percentage))
ggplot(barplotmob, aes(x=factor(VisitID), y=Percentage, fill = factor(eq5d5lMobil))) +
geom_bar(stat="identity", width = 0.7)+
geom_text (aes(y = lab_ypos, label = paste0(round(Percentage, digits=0)), group =eq5d5lMobil),
color = "black", size = 3)
```
>Quitting from lines 238-274 (EQ5D_1.rmd)
Fehler in (function (filename = if (onefile) "Rplots.pdf" else "Rplot%03d.pdf", :
unable to start device 'cairo_pdf'
Ruft auf: <Anonymous> ... in_base_dir -> in_dir -> plot2dev -> do.call -> <Anonymous>
Zusätzlich: Warnmeldungen:
1: Calling `as_tibble()` on a vector is discouraged, because the behavior is likely to change in the future. Use `enframe(name = NULL)` instead.
This warning is displayed once per session.
2: In (function (filename = if (onefile) "Rplots.pdf" else "Rplot%03d.pdf", :
cairo error 'out of memory'
Ausführung angehalten