如何在 VSCODE 中高效使用 R 语言
VSCODE 配置 R
一、功能特性展示
之前一直在用 Rstudio 来编写 R,也尝试用过 Pycharm 配置 R 环境。
但是由于现在需求要同时满足 Python,R 和网站要同时开发,为了避免来回切换不同的IDE,重复配置,还有路径一堆麻烦事。
今天我们先介绍在 VSCODE 中配置 R 环境,看看它有什么特性足以让我们更改自己习惯。
1、绘图
2、查看及搜索数据
3、多行输出
4、鼠标悬停,显示函数文档
5、鼠标悬停,显示变量信息
6、格式化代码
二、材料
- vscode
- R
- vscode 插件:
- R support for Visual Studio Code
- R LSP Client
- Radian
三、安装
1、安装 vscode
官网:https://code.visualstudio.com/
2、安装 R
下载:https://cran.r-project.org/mirrors.html
选择清华的TUNA镜像
根据需要选择下载,以windows下载为例
选择
base点击下载

安装时需要注意:
选安装目录时候,需要注意没必要安装在C盘,后续安装包会占用资源。建议在其他盘创建目录,然后以R版本号命名的方式安装R。
比如我在E盘下的
R目录:

3、安装插件
R support for Visual Studio Code
这是在 vscode 运行 R 语言的核心插件
R LSP Client
R LSP Client 插件依托于 Language Server Protocol,LSP 可以使编程语言在编辑器上得到语法支持。提供自动补全,代码格式化,帮助文档等功能。
4、Radian
官网称 radian 是一款21世纪的R语言编辑器。
因为radian 是 python编写,首先我们得先有 python 环境,安装参考:https://zhenglei.blog.csdn.net/article/details/88828229。
pip install radian
在 cmd 里输入radian查看是否安装正常
四、配置
1、在 VSCODE 右下角进入设置页面
2、根据不同操作系统,比如windows配置时,输入r.rterm.windows,填写 R 或 radian 路径。
如果为了更好的体验,建议配置 radian 的路径。
在 shell 中拿到 radian 路径信息
where radian
比如我的路径是:
r.rterm.windows

3、输入r.br,选中bracketed paste
不勾选,Radian 不会启用
4、输入r.rterm.option,删除--no-save,--no-restore,添加--no-site-file
5、输入r.sessionWatcher,勾选
可以实现绘图IDE,查看dataframe。如果想用原生绘图,取消勾选即可。
6、要实现自动补齐还需要安装:Languageserver
install.packages("languageserver")

五、测试
1、计算和输出
add <- function(x, y) {
x + y
}
print(add(1, 2))
print(add(1.0e10, 2.0e10))
print(paste("one", NULL))
print(paste(NA, "two"))
print(paste("multi-line", "multi-line"))

2、绘图
h <- c(1, 2, 3, 4, 5, 6)
M <- c("A", "B", "C", "D", "E", "F")
barplot(h,
names.arg = M, xlab = "X", ylab = "Y",
col = "#00cec9", main = "Chart", border = "#fdcb6e"
)

如何在 VSCODE 中高效使用 R 语言的更多相关文章
- R语言学习笔记——C#中如何使用R语言setwd()函数
在R语言编译器中,设置当前工作文件夹可以用setwd()函数. > setwd("e://桌面//")> setwd("e:\桌面\")> s ...
- linux系统下如何在vscode中调试C++代码
本篇博客以一个简单的hello world程序,介绍在vscode中调试C++代码的配置过程. 1. 安装编译器 vscode是一个轻量的代码编辑器,并不具备代码编译功能,代码编译需要交给编译器完成. ...
- 如何在vscode中调试python scrapy爬虫
本文环境为 Win10 64bit+VS Code+Python3.6,步骤简单罗列下,此方法可以不用单独建一个Py入口来调用命令行 安装Python,从官网下载,过程略,这里主要注意将python目 ...
- 七、如何在Java中高效检查一个数组是否含有一个值
如何检查一个数组(非排序的)是否包含特定的值.这是个非常有用或经常被在Java中使用.这是个在Stack Overflow中高得票的问题.在已经高得票的答案中,有许多不同的处理方法,但是时间的复杂度非 ...
- 【vscode】如何在vscode 中配置:TypeScript开发node环境
入门流程,大神绕行. 安装环境 这就不多说了,安装开发的环境. 安装vscode 下载地址:https://code.visualstudio.com/ 安装Nodejs 下载地址:https://n ...
- 如何在VScode中添加代码片段
拿 VUE 举例,新建 VUE 文件,输入前缀,出现代码段 文件 ---> 首选项 ---> 用户代码片段 在输入框中输入 vue ,找到 vue.json ,然后在 vue.json ...
- 如何在vscode中调试vue-cli项目?
一:参考官网文档,写的还是很清楚的:https://cn.vuejs.org/v2/cookbook/debugging-in-vscode.html 二:需要安装的东西和初始项目 2.1 用vue ...
- 【转】如何在TensorFlow中高效使用数据集
本文主要记录tensorflow一个比较好用的API:Dataset,feed-dict 是向 TensorFlow 传递信息最慢的方式,应该尽量避免使用.向模型提供数据的正确方式是使用输入管道,这样 ...
- 如何在vscode中编写.net core 项目(vscode)
1.下载拓展 .NET Core Extension Pack (作者:保哥) 这个里面将需要的插件都打包了小白一键下载就好了 2.下载扩展 vscode-solution-explorer ...
随机推荐
- Linq.Expressions扩展ExpressionExtension
手上有一个以前项目用到的.NET工具类封装的DLL. 正好又想试一下动态LAMBDA表达式,用.NET Reflector看一下源码. public static class ExpressionEx ...
- java基础-01代理类
简单的代理类实现案例主实现类:ProxyTestimport java.lang.reflect.InvocationHandler;import java.lang.reflect.Proxy;im ...
- DevOps运动的缘起 将DevOps想象为一种编程语言里面的一个接口,而SRE类实现了这个接口
SRE vs DevOps:是敌是友? - DockOne.io http://www.dockone.io/article/5935 RE vs DevOps:是敌是友? [编者的话]网站可靠 ...
- 匿名字段 内嵌结构体 interface作为struct field 匿名接口
interface作为struct field,谈谈golang结构体中的匿名接口 - Go语言中文网 - Golang中文社区 https://studygolang.com/articles/19 ...
- loj2587铁人两项
无向图,图中选出定点三元组(a,b,c),a->b->c的路径没有重复边.问方案有多少? -------------------------------------------- 首先求出 ...
- Codeforces 1439B. Graph Subset Problem (思维,复杂度分析)
题意 给出一张无向图,让你找出一个大小为\(k\)的子团或者找出一个导出子图,使得图中的每个点的度数至少为\(k\). 思路 首先有个重要观察,当\(\frac{k(k-1)}{2} > m\) ...
- java架构《并发线程高级篇四》
本章主要讲并发线程的常见的两种锁.重入锁和读写锁 一:重入锁(ReentrantLock) 概念:重入锁,在需要进行同步的代码加锁,但最后一定不要忘记释放锁,否则会造成锁永远不能释放,其他线程进不了 ...
- 通过jenkins构建服务,并发布服务,修改Jenkins以Root用户运行
通过jenkins构建服务,并发布服务,修改Jenkins以Root用户运行 其他博文:从0到1体验Jenkins+Docker+Git+Registry实现CI自动化发布 Jenkins注册中心 一 ...
- scanf()函数释疑(word找的,没源地址了)
scanf()函数释疑(上) 一.序言 scanf()函数的控制串的使用 例1. #include "stdio.h" int main(void) { int a,b,c; sc ...
- 利用Java反射机制将Bean转成Map
import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang ...
