准备

第一步就是安装R语言环境以及RStudio

图绘制准备

首先安装库文件,敲入指令,回车

install.packages('corrplot')

然后安装excel导入的插件,点击右上角import Dataset,选中From excel即可。

这些操作都很简单~~

数据预处理

然后到了数据输入了,这么多数据,我们总不能一行输入吧?那得有多蠢

于是我们利用上了数据导入功能,当当当~~

然而理想很丰满,现实却很蛋疼,导入的excel数据格式不是我们希望的矩阵格式ORZ!

哎,休息下喝杯茶,看看可能用到的指令吧。

假设导入的数据为data,那么可能用到的指令如下:

//查看数据
data
//删除矩阵第一行
data = data[-1,]
//删除矩阵第一列
data = data[,-1]
//data转换成矩阵
data = as.matrix(data)
//更改行名
row.names(data)<-c("OC","EC","SOC","NH4+","NO3","SO42")

指令在手,天下我有!

存在问题:导入数据格式问题

期望导入的数据格式是矩阵,如下图所示:

实际导入的数据格式如下图:

报警了~~

解决方案:导入数据转换成矩阵流程

然而山人自有妙计~~

  1. data = data[,-1],删除第一列的多余数据,运行结果如下图

  2. data = as.matrix(data),转变成矩阵,运行结果如下图

  3. 虽然变成矩阵了,但是第一列行名有问题。运行代码row.names(data)<-c("OC","EC","SOC","NH4+","NO3","SO42"),运行结果如下图

数据绘图

数据变成矩阵后,运行如下指令,即可得到图片

library(corrplot)
corrplot(corr = data, method = 'color', order ="AOE", addCoef.col="grey")

运行结果如下图所示:

corrplot 的具体参数含义可以参考文献使用R语言绘制其他图形之相关系数图

然而参数好多啊。。。。并不想看,我差不多是条咸鱼了。。。

继续撸参数,然后慢慢调节。。。

其中关于颜色的调整参数为col,参考文献An Introduction to corrplot Package

例如

col<- colorRampPalette(c("red","orange", "yellow","green","blue","purple"))(20)
corrplot(corr = data, method = 'color', order ="AOE", addCoef.col="grey",col=col)

运行结果如下:

但是零的部分很丑有木有,因此需要调参~~

关于添加cl.lim参数以及type参数微调优化

col<- colorRampPalette(c("black","blue" ,"purple","green","yellow","orange","red","black","blue" ,"purple","green","yellow","orange","red"))(20)
corrplot(corr = data, method = 'color', order ="AOE", addCoef.col="grey",col=col,cl.lim = c(0,1),type="upper")

运行结果如下:

好了,到此为止基本上相对关系图就绘制完毕了O(∩_∩)O~~

如果想把图绘制的更加炫酷,强烈推荐自习阅读参考文献6,就酱= ̄ω ̄=

最后,修仙伤身====

参考文献

  1. 使用R语言绘制其他图形之相关系数图
  2. R语言中的数据集
  3. R语言定义数据框的行名和列名
  4. r语言中删除数据集中的一列或一行数据
  5. 如何利用已经导入的excel数据和txt数据建立矩阵?
  6. An Introduction to corrplot Package

R语言绘制相对性关系图的更多相关文章

  1. 一幅图解决R语言绘制图例的各种问题

    一幅图解决R语言绘制图例的各种问题 用R语言画图的小伙伴们有木有这样的感受,"命令写的很完整,运行没有报错,可图例藏哪去了?""图画的很美,怎么总是图例不协调?" ...

  2. R语言绘制花瓣图flower plot

    R语言中有很多现成的R包,可以绘制venn图,但是最多支持5组,当组别数大于5时,venn图即使能够画出来,看上去也非常复杂,不够直观: 在实际的数据分析中,组别大于5的情况还是经常遇到的,这是就可以 ...

  3. R语言绘制QQ图

    无论是直方图还是经验分布图,要从比较上鉴别样本是否处近似于某种类型的分布是困难的 QQ图可以帮我们鉴别样本的分布是否近似于某种类型的分布 R语言,代码如下: > qqnorm(w);qqline ...

  4. R语言绘制空间热力图

    先上图 R语言的REmap包拥有非常强大的空间热力图以及空间迁移图功能,里面内置了国内外诸多城市坐标数据,使用起来方便快捷. 开始 首先安装相关包 install_packages("dev ...

  5. R语言绘制沈阳地铁线路图

    ##使用leaflet绘制地铁线路图,要求 ##(1)图中绘制地铁线路 library(dplyr) library(leaflet) library(data.table) stations< ...

  6. R语言绘制箱型图

    箱形图是数据集中数据分布情况的衡量标准.它将数据集分为三个四分位数.盒形图表示数据集中的最小值,最大值,中值,第一四分位数和第四四分位数. 通过为每个数据集绘制箱形图, 比较数据集中的数据分布也很有用 ...

  7. R语言绘制茎叶图

    与直方图相比,茎叶图更能细致的看出数据分布情况! 代码: > x<-c(25, 45, 50, 54, 55, 61, 64, 68, 72, 75, 75,+ 78, 79, 81, 8 ...

  8. R语言——绘制半圆形图

    好久没发点新的作品了.......也许...... Que sera, seraWhatever will be, will be

  9. R语言学习 - 箱线图(小提琴图、抖动图、区域散点图)

    箱线图 箱线图是能同时反映数据统计量和整体分布,又很漂亮的展示图.在2014年的Nature Method上有2篇Correspondence论述了使用箱线图的好处和一个在线绘制箱线图的工具.就这样都 ...

随机推荐

  1. 通过IIS共享文件夹来实现静态资源"本地分布式"部署

    以下以文件型数据库(如sqlite)为例 楼主话:以下内容,若有不专业处,大胆喷,虚心求教. 起因:要进行一个项目的分布式部署,而这个项目所涉及的其中一个数据库为sqlite(经测试,同为文件型数据库 ...

  2. PHP.16-PDO

    PHP 数据对象 (PDO) 扩展为PHP访问数据库定义了一个轻量级的一致接口.实现 PDO 接口的每个数据库驱动可以公开具体数据库的特性作为标准扩展功能. 注意利用 PDO 扩展自身并不能实现任何数 ...

  3. OpenCV学习笔记(十一) 轮廓操作

    在图像中寻找轮廓 首先利用Canny算子检测图像的边缘,再利用Canny算子的输出作为 寻找轮廓函数 findContours 的输入.最后用函数 drawContours 画出轮廓.边界Counto ...

  4. 洛谷P1451 求细胞数量

    求细胞数量 题目链接 这道题大概是一个最简单的联通块的题了qwq 注意枚举起点的时候 一定不要从0开始不然你就会从0进入到了其他联通块中从而多查. 一定看清题意这道题不是同色为联通块!!! AC代码如 ...

  5. Android通过用代码画虚线椭圆边框背景来学习一下shape的用法

    在Android程序开发中,我们经常会去用到Shape这个东西去定义各种各样的形状,shape可以绘制矩形环形以及椭圆,所以只需要用椭圆即可,在使用的时候将控件比如imageview或textview ...

  6. python学习笔记六:内置函数

    一.数学相关 1.绝对值:abs(-1) 2.最大最小值:max([1,2,3]).min([1,2,3]) 3.序列长度:len('abc').len([1,2,3]).len((1,2,3)) 4 ...

  7. Entity Framework(一)

    相关知识点复习: 1.var 类型推断: var p=new Person(); 2.匿名类型: var a=new {Name="wang",Age=12  }; 3.给新创建的 ...

  8. Mybatis + Oracle 批量insert的问题

    这个问题真的太坑了 之前用ibatis+sql server 的foreach 很容易就写出来批量insert数据,但是测试后报错:SQL结束格式错误 现在换到银行工作,数据库也换成Oracle了 特 ...

  9. ipa和ironic-conductor交互

    IPA使用lookup和hearteat机制与Ironic Conductor进行交互,启动时agent给Conductor的vendor_passthru lookup endpoint(地址为/v ...

  10. php 报错 Cannot modify header information

    在用CI 开发微信公众号的时候出现下面这么个问题,网上看了一圈解决办法是:把报错的文件用editplus另存为utf-8. Severity: Warning Message: Cannot modi ...