将r脚本的所有内容导出为pdf

将r脚本的所有内容导出为pdf,r,pdf,export,R,Pdf,Export,我想将r脚本的所有内容导出为pdf。可能吗? 我使用这些命令导出,但我看到的只是导出图形 pdf(file = "example.pdf") dev.off() 谢谢大家! setwd("C:/Users/Prat/Desktop/c") > dir() [1] "script.R" > knitr::stitch('script.r') output file: script.tex 在“我的文件夹”中不会显示script.pdf,否则将显

我想将r脚本的所有内容导出为pdf。可能吗? 我使用这些命令导出,但我看到的只是导出图形

pdf(file = "example.pdf")
  dev.off()
谢谢大家!

    setwd("C:/Users/Prat/Desktop/c")
    > dir()
    [1] "script.R"
    > knitr::stitch('script.r')
 output file: script.tex

在“我的文件夹”中不会显示script.pdf,否则将显示script.tex和带有pdf中图片的文件夹。您可以使用knitr软件包执行此操作。这是一个工作流程:

  • 将脚本另存为文件(例如,
    myscript.r
  • 然后运行knitr::stitch('myscript.r')
  • 生成的PDF将在本地保存为
    myscript.PDF
    。您可以使用
    browseURL('myscript.pdf')
    查看它

  • 请使用以下代码集(您需要根据数据集/数据帧名称进行修改)


    谢谢。

    对于所有寻求简单快速解决方案的人,我建议使用utils中的函数capture.output()

    只需1.)捕获要运行的命令并将其分配给变量,2.)然后打印该变量。正如您所看到的,图像可以一路打印。我上面链接的网页上的例子没有使用降价

    下面是我的降价示例(这是一个人真正需要的):

    `{r,echo=F}
    #伪数据集
    x=rnorm(50,平均值=3.3,标准差=1)
    y=rnorm(50,平均值=3.1,标准差=0.9)
    z=rnorm(50,平均值=3.2,标准差=1.1)
    #创建数据帧
    
    df您可以使用

        knitr::stitch_rhtml('filename.r')
    

    由于.tex文件不易读取,但html文件可以在任何浏览器中轻松查看。

    是的,
    pdf()
    函数是一种图形设备。历史记录机制可用于保存最近命令的记录。您应该明确“导出r脚本的所有内容”的确切含义。@OriolPrat查看您的屏幕截图文件“script.tex”是一个pdf文件。尝试用PDF阅读器打开它和/或将扩展名更改为“PDF”。我这样做了,但adobe给我一条消息,内容不可用。运行
    tools::texi2pdf('script.tex')
    并查看是否得到PDF。它给我错误:在“script.tex”上运行“texi2dvi”失败,但它保存了我的myscript.tex,它不是pdf格式:/@OriolPrat检查您的工作目录。那里也应该有一个PDF。谢谢你的帮助。现在我看到了,它为我导出了一个文件夹,每个图都有一个pdf文件和一个.tex文件夹。但是我仍然无法导出脚本的文本部分。@OriolPrat您确定它不在那里吗?如果是这样,请使用脚本和您尝试的knitr代码的最小可复制示例更新您的问题。请注意,大多数浏览器都可以“打印到文件”-在打印对话框中,您通常可以选择pdf或postscript作为文件的输出格式,以及文件的位置。只要试着在浏览器中打开任何一页(即使是这一页),按Ctrl+P,看看你是否能找到“打印到文件”选项。
    ```{r, echo = F}
    # fake data-set
    x = rnorm(50, mean = 3.3, sd=1)
    y = rnorm(50, mean = 3.1, sd=0.9)
    z = rnorm(50, mean = 3.2, sd=1.1)
    # create dataframe
    df <- data.frame(x, y, z)
    
    # adding a graphic
    plot(df$x, df$y)
    
    # create a model as example
    linearMod <- lm(y ~ x + z, data=df) 
    
    # all one needs to capture the output!!:
    bla <- capture.output(summary(linearMod))
    print(bla)
    ```
    
        knitr::stitch_rhtml('filename.r')