R 高亮显示ggplot2条形图中对应于单个';s的特定PDF报告

R 高亮显示ggplot2条形图中对应于单个';s的特定PDF报告,r,pdf,ggplot2,r-markdown,knitr,R,Pdf,Ggplot2,R Markdown,Knitr,为这个糟糕的标题道歉,我不知道如何最好地表达我的问题所在 为了提供一些上下文,我想使用Rmarkdown为我们组织中的每个提供者创建一个个性化的记分卡。我已经知道如何为每个提供商创建一个单独的PDF;但是,我希望在每个人的报告上都有一个简单的条形图,突出显示提供者的位置,以便他们可以将自己与同行进行比较。以下是我目前的情况: 首先,我创建了数据集: ############################## Create dataset and export #################

为这个糟糕的标题道歉,我不知道如何最好地表达我的问题所在

为了提供一些上下文,我想使用Rmarkdown为我们组织中的每个提供者创建一个个性化的记分卡。我已经知道如何为每个提供商创建一个单独的PDF;但是,我希望在每个人的报告上都有一个简单的条形图,突出显示提供者的位置,以便他们可以将自己与同行进行比较。以下是我目前的情况:

首先,我创建了数据集:

############################## Create dataset and export #####################################
df = data.frame(
  "Provider" = c("A","B","C","D"),
  "Measure" = c(1.2,0.8,1.7,0.4)
)
write.csv(df, "pathway/df.csv")
接下来,我创建了一个名为“TEST”的Rmarkdown文件,该文件在数据集中调用并包含一个图形

###################### Create Rmarkdown file named "TEST" ####################################
---
  output: pdf_document
---

```{r echo=FALSE}
df <- read.csv("pathway/df.csv", stringsAsFactors = FALSE)
name <- df$Provider[i]

Dear `r name`,

This is your personalized scorecard.

```{r} 
ggplot() +
  geom_bar(data=df, aes(x=reorder(Provider, -Measure), y=Measure,
                        fill = factor(ifelse(Provider == "A", "You","Your Peers"))), 
           stat = "identity") +
  scale_fill_manual(name = "Provider", values=c("steelblue","lightgrey"))
创建名为“TEST”的标记文件####################################
---
输出:pdf\U文件
---
```{r echo=FALSE}

df您的代码中有一些错误,因此我在这里给出了正确的文件

RMD文件: 在您的案例i中,您必须提交参数。您在
name中也这样做了
################ Run R file with loop to make separate PDFs per Provider #####################
library(knitr)
library(rmarkdown)

#Read data
df <- read.csv("pathway/df.csv", stringsAsFactors = FALSE)

#Create loop
for (i in 1:nrow(df)){
  rmarkdown::render(input = "pathway/TEST.Rmd",
                    output_format = "pdf_document",
                    output_file = paste("handout_", i, ".pdf", sep=''),
                    output_dir = "pathway/folder/")
}
---
output: pdf_document
params:
  i: 1
---

```{r echo=FALSE}
library(ggplot2)
df <- read.csv("df.csv", stringsAsFactors = FALSE)
name <- df$Provider[i]
```

Dear `r name`,

This is your personalized scorecard.

```{r} 
ggplot() +
  geom_bar(data=df, aes(x=reorder(Provider, -Measure), y=Measure,
                    fill = factor(ifelse(Provider == df$Provider[i], "You","Your Peers"))), 
       stat = "identity") +
  scale_fill_manual(name = "Provider", values=c("steelblue","lightgrey"))
```
library(knitr)
library(rmarkdown)

#Read data
df <- read.csv("pathway/df.csv", stringsAsFactors = FALSE)

#Create loop
for (i in 1:nrow(df)){
  rmarkdown::render(input = "pathway/TEST.Rmd",
                    output_format = "pdf_document",
                    output_file = paste("handout_", i, ".pdf", sep=''),
                    output_dir = "pathway/folder/",
                    params = list(i = i)))}