Code Monkey home page Code Monkey logo

rmd-article-template's Introduction

Table of Contents

Rmarkdown article template

使用方法

注意: 下面操作要频繁修改增加环境变量,关于环境变量的操作可以参考这里

软件要求

  1. R
  2. R packages:
    • cmd 中运行 R后再分别运行 install.packages('knitr')install.packages('rmarkdown')install.packages('bookdown')install.packages('reticulate') 四条代码,
    • 运行成功之后再分别运行 library(knitr)library(rmarkdown)library(bookdown)library(reticulate) ,如果都加载成功说明已安装好。
  3. Anaconda (运行Python代码必需):
  4. pandoc 程序:
    • 如果已经安装Anaconda,则pandoc程序在 C:\Anaconda3\Scripts 文件夹中,
    • 添加环境变量 C:\Anaconda3\Scripts即可,如果 anaconda装在其他盘将 C 改 成相应盘;
    • cmd 中运行 pandoc -v ,如果没有出现错误则说明安装成功。
  5. pandoc-crossref 程序:
  6. Latex (生成pdf和beamer必需):

编译方法I:使用 Windows 发送到 功能编译

  1. 克隆项目rmd-article-template到某文件夹(注意路径中不能有空格,特殊字符);
  2. 首先复制项目中4个bat文件:rmd-html.bat,rmd-doc.bat,rmd-pdf.bat,rmd-beamer.bat
  3. 然后通过WIN+R组合键,打开运行窗口,输入shell:sendto后回车,进入文件夹C:\Users\电脑用户名\AppData\Roaming\Microsoft\Windows\SendTo;
  4. 右键点击Sendto文件夹空白处,选择'粘贴快捷方式',将复制好的4个bat文件以快捷方式的方式放到SendTo文件夹。
  5. 最后找到项目的 rmd-template.RMD 文件,点击右键后选择发送到相应的bat文件,即可生成相应格式的文档。

编译方法II:在 Vscode 中编译

注意: 必需使用配置好的 Vscode 版本才能编译,下载地址:链接:https://pan.baidu.com/s/1qf3rmdqk3COdGPA7D312PA 提取码: 5fq3

  1. 右键点击克隆的项目文件夹,选择 Open Folder as VS Code Project 来打开,没有 配置好的,可以直接打开Vscode,点击左上角菜单的文件(F),然后选择打开文件夹, 找到需要的文件夹,点击选择文件夹即可打开为VSCode项目。可以根据vscode底部颜 色来判断打开的是不是文件夹,若底部为浅蓝色,则表明打开的是文件夹,若底部为紫 色,则打开的是单个文件,不能编译,需要按照上面的步骤打开文件夹才能编译。

  2. 在打开的rmd文件中按下快捷键Ctrl+Shift+P,输入 run task,选择第1条Tasks: Run Task,然后点击rmd-html即可生成html文件。选择rmd-pdf生成pdf文件,选择 rmd-beamerrmd-pdf生成pdf文件,选择rmd-doc生成word文档。

编译方法III:在 Rstudio 中编译(有bug,不要使用

  1. Rstudio 中 Rmarkdown 文件运行带有中文字符的python代码出错,(RStudio-1.4.1711已 fix此bug)
  2. Rstudio 自动把Rmarkdown 文件中 yaml header 中的 true 等改成 yes, 导致 pandoc-crossref 程序出错
  3. Rstudio 不能读取 _output.yml 文件中的内容

编译常见错误的原因及解决方法

常见错误

  1. Vscode 中运行 run task 没有出现下拉任务
  2. Vscode 中找不到 bat 文件
  3. 找不到 Rscript 程序
  4. 找不到 knitr 等包
  5. 找不到 pandoc 程序
  6. 找不到 pandoc crossref 程序
  7. 找不到 python 或其 package
  8. 出现 QT 错误, python 图形出不来
  9. 不能生成 pdfbeamer
  10. pdf 文件中中文字符乱码

常见错误原因及解决方法

-----------------使用以下解决方法,必须先阅读下面的注意(必读)--------------

================ 注意(必读) ================

  1. 以下解决方法必须先设置好环境变量修改方法一:使用命令行,具体参考这里.
  2. 以下解决方法必须重启vscode才能发挥作用;
  3. 文件路径必须改成自己的文件路径;
-----------------使用以下解决方法,必须先阅读上面的注意(必读)--------------
  1. Vscode 中运行 run task 没有出现下拉任务
    • 原因: Vscode没有以项目形式打开文件夹,打开的是单个文件
    • 解决方法: 用Vscode打开文件夹,而不是直接打开单个文件
  2. 找不到 bat 文件
    • 原因:没有用Vscode打开包含Rmd文件的文件夹,可能打开的是其上层文件夹
    • 解决方法:用Vscode打开包含Rmd文件的文件夹
  3. 找不到 Rscript 程序
    • 原因: 没有安装R软件或者没有加入到 PATH 环境变量中
    • 解决方法: 安装R并把C:\Worktools\R\R-3.5.3\bin\x64 文件夹加入到 PATH 环境变量中.
  4. 找不到 knitr 等包
    • 原因: R 中相关包没有安装好
    • 解决方法: R中安装相关包,具体见上面软件要求的第3条.
  5. 找不到 pandoc 程序
    • 原因:没有pandoc.exe或者没有加入到 PATH 环境变量中
    • 解决方法:安装Anaconda并加入到 PATH 环境变量中,Anacondapandoc.exe的位 置在 C:\Anaconda3\Scripts 文件夹中,把该文件夹加入到 PATH 环境变量中.
  6. 找不到 pandoc crossref 程序
    • 原因: 处理参考文献需要 pandoc-crossref.exe 程序,系统中没有该程序
    • 解决方法: 下载(下载地址:链接: https://pan.baidu.com/s/1mvRjqJKboirDaaR0icrNRQ 提取码:q7en)解压后把 pandoc-crossref.exe 放入到和 上面第5步中的pandoc.exe 同一文件夹中
  7. 找不到 python 或其 package
    • 原因: Rreticulate 包找不到 Anacondapython程序
    • 解决方法: 在 CMD 中运行 setenv -ua RETICULATE_PYTHON C:\Anaconda3\python.exe
  8. 出现 QT 错误, python 图形出不来
    • 原因:操作系统中装有其他 QT platforms(特别是onedrive软件),导致 python 不能 使用自带的 QT platform
    • 解决方法:在 CMD 中运行 setenv -ua QT_QPA_PLATFORM_PLUGIN_PATH C:\Anaconda3\Library\plugins\platforms
  9. 不能生成 pdfbeamer
    • 原因: 没有安装 latex 软件或者没有加入环境变量
    • 测试方法: CMD 中输入 xelatex 没有出现错误则表明 latex 设置成功
    • 解决方法: 安装最新版 Latex 发行版并加入到 PATH 环境变量中,见上面软件要求 第6步
  10. pdf 文件中中文字符乱码
    • 原因: 可能字体问题或 Latex 不是新版原因
    • 解决方法:安装新版 Latex,如上面TexLive

RMD-ARTICLE-TEMPLATE介绍

项目文件结构

该项目是一个论文模板,其主要文件结构为

\---rmd-article-template
    |   beamer-header.tex
    |   Bibfile.bib
    |   rmd-template.Rmd
    |   znufelogo.jpg
    |   _bookdown.yml
    |   _output.yml
    +---codes
    +---data
    +---results
    \---style
            beamer-template.tex
            bookdown-pdf-template.tex
            chinese-gb7714-2005-numeric.csl
            default-1.17.0.2.tex
            gbt7714-plain-zuel.bst
            markdown.css
            word-styles-01.docx
            word-styles-02.docx

共包含4个子文件夹,分别是codes,data,results,style和 其余6个文档,分别是 _bookdown.yml,_outout.yml,bermer-header.tex,Bibfile.bib,rmd-template.Rmd,znufelogo.jpg。 这10个部分是必不可少的,具体使用时视情况增加所需文件。下面对这10个部分逐一做简单介绍。

  1. codes是用来放置论文中用来处理模型计算的代码;
  2. data用来放置论文写作所需的原始数据;
  3. results用来放置论文写作过程所生成的图和表;
  4. style部分还包括几个用来控制论文生成格式的子文件,如参考文献格式,word文档生成格式等;
  5. _bookdown.ymlbookdown文档中相关字符的说明;
  6. _outout.yml是文档转换格式html,doc,pdf,bookdown,beamer幻灯片 时涉及pandoc和tex的具体设置,是配置文件;
  7. bermer-header.tex是生成幻灯片时,对作者,邮箱以及logo的设置;
  8. Bibfile.bib文件放置了用Jabref整理的固定格式的参考文献文本文档;
  9. rmd-template.Rmd是论文正文部分;
  10. znufelogo.jpg即生成幻灯片时的Logo。

如何运行 Rmarkdown 中的 python 代码

  1. ctrl+K M,在上方弹出的框中输入python,然后回车或者点击下方出现的python 栏,就切换到了python语言模式,光标放在python代码块所在的行,按shift+enter, 即可运行该行python代码。
  2. 运行完python代码后,想要回到Rmarkdown语言模式,同样是按ctrl+K M,在上方弹出 的框中输入Rmarkdown,然后回车或者点击下方出现的R Markdown栏,就切换回了 Rmarkdown语言模式。

rmd-template.rmd相关说明

  1. rmd-template.rmd文档名称rmd-template可自行修改
  2. 在rmd-template.rmd中,title,author,date,institute冒号后的内容可自行修改。
  3. TODO## 使用方法可删除,使用rmd格式编辑文档内容。
  4. 文中其他内容均为格式设计不要随意更改。
  5. 文末如下的最后两行不要更改,始终放在文末,通过编辑文件夹中Bibfile.bib插入参考文献。
    # 参考文献
    [//]: # (\bibliography{Bibfile})
    

rmd生成幻灯片beamer内容相关说明

  1. 选择rmd-beamer生成了5个文件,分别是rmd-template_beamer.pdfrmd-template_beamer.logrmd-template_beamer.texrmd-template.pyrmd-template.R,其中rmd-template_beamer.pdf是我们所需要的幻灯片内容。
  2. 在rmd-template.rmd中,institute: 中南财经政法大学统计与数学学院只在幻灯片中显示。classoption: "aspectratio=1610",1610 是幻灯片的长宽比例,有1610,169,43等选择,调整幻灯片长宽。
  3. 关于幻灯片中邮箱和右下角图标logo的修改:
    • 修改图标:znufelogo.jpg是幻灯片右下角的图标,可更换为其他jpg图片。打开beamer-header.tex,将第二行最后{./znufelogo.jpg}中的znufelogo改为需要替换的jpg图片名称,需替换的jpg图片要放在当前文件夹中。
    • 修改邮箱:打开beamer-header.tex,第一行将两个某某修改为文章作者名,将[email protected]修改为自己的邮箱
    • 打开_output.yml,第47行取消注释in_header: ./beamer-header.tex
    • 做出以上修改后,运行rmd-beamer,生成的幻灯片中邮箱和图标logo已经修改。

footnote 相关问题

  1. markdown 中用 ^[脚注内容] 来增加脚注
  2. 正文中的脚注所有输出格式都支持
  3. title 和 author 中的脚注 docx 和 html默认支持,article 和 bookdown 中由于使用 了 titling.sty ,需要 HACK titling.sty 才可以支持, beamer 中不能 支持,只能在 YAML 中使用 thanks 来支持.

rmd-article-template's People

Contributors

jinlin82 avatar songxiaoman28 avatar wanghonghong456 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.