准备

第一步就是安装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. Teaching Is a Fruitful Way to Learn【教学是一种有效的学习方式】

    Teaching Is a Fruitful Way to Learn For thousands of years, people have known that the best way to u ...

  2. python面向对象的反射

    python面向对象中的反射:通过字符串的形式操作对象相关的属性.python中的一切事物都是对象(都可以使用反射) getattr # 根据字符串的形式,去对象中找成员.hasattr # 根据字符 ...

  3. Struts2---环境搭建及包介绍

    导入jar包 jar包下载地址:http://www.apache.org/官网中选择struts,然后点击download下载.将jar包导入到WEB-INF下的lib文件目录下. asm-5.2. ...

  4. Codeforces 771E Bear and Rectangle Strips DP

    题意: 一个由大写字母组成的长度为\(n(n \leq 75)\)的字符串,每次操作可以交换相邻位置的两个字母,求最少操作多少次使字符串中不出现子串VK 分析: VK之外的字母具体是什么,我们并不关心 ...

  5. laravel5.5入口文件分析

    入口文件 public/index.php 1.加载composer的自动加载器 require __DIR__.'/../vendor/autoload.php'; 自动加载,不用再各种requir ...

  6. 《Cracking the Coding Interview》——第11章:排序和搜索——题目5

    2014-03-21 21:37 题目:给定一个字符串数组,但是其中夹杂了很多空串“”,不如{“Hello”, “”, “World”, “”, “”, “”, “Zoo”, “”}请设计一个算法在其 ...

  7. 【Java数据结构学习笔记之三】Java数据结构与算法之队列(Queue)实现

      本篇是数据结构与算法的第三篇,本篇我们将来了解一下知识点: 队列的抽象数据类型 顺序队列的设计与实现 链式队列的设计与实现 队列应用的简单举例 优先队列的设置与实现双链表实现 队列的抽象数据类型 ...

  8. serial console

    适用于: agent_ipmitool_socat pxe_ipmitool_socat 修改driver方式:更换ironic node的driver类型 yum install -y socat ...

  9. python 由递归的dict构建树的画图代码

    createPlot(mytree)方法实现. 其中myTree是一个字典,调用retrieveTree(0)可以获得一个字典的样式. Last login: Thu Feb 23 19:07:53 ...

  10. EasyUi DataGrid 请求Url两次问题

    easyui datagrid 1.4 当total为0时,请求两次url问题 框架问题:需要在easyui文件后加修补补丁 /** * The Patch for jQuery EasyUI 1.4 ...