准备

第一步就是安装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. 笔记-爬虫-scrapy-srcapy-redis组件

    笔记-爬虫-scrapy-srcapy-redis组件 1.      简介 scrapy是一个爬虫框架,但不支持分布式,scrapy-redis是为了更方便的实现scrapy分布式爬虫的组件. 可以 ...

  2. ElasticSearch 之 Client

    在使用ElasticSearch的时候,我们需要与Cluster通信,Java版本的API提供了几种方式来构造Client,进而通过Client操作Cluster.   1)使用Node与clusto ...

  3. 15.4,redis不重启,切换RDB备份到AOF备份

      确保redis版本在2.2以上 [root@pyyuc /data ::]#redis-server -v Redis server v= sha=: malloc=jemalloc- bits= ...

  4. linux 广播

    广播是一台主机向局域网内的所有主机发送数据.这时,同一网段的所有主机都能接收到数据.发送广播包的步骤大致如下: (1)确定一个发送广播的接口,如eth0 (2)确定广播的地址,通过ioctl函数,请求 ...

  5. 使用node构建一个自己的服务器

    我们做本地服务器,经常会选择Apache.IIS或者Tomcat,当然这些最方便的算是Apache,几乎不需要配置,最多就是配置下端口,亦或者我们想不用localhost,改成其他也是可以的,只要去更 ...

  6. JMeter学习笔记(十一) 关于 CSV Data Set Config 的 Sharing mode 对取值的影响

    关于 CSV Data Set Config 的一些介绍之前已经梳理过了,可以参考: https://www.cnblogs.com/xiaoyu2018/p/10184127.html . 今天主要 ...

  7. 4.实现简单的shell sed替换功能

    # -*- coding:utf-8 -*- # Author: JACK ZHAO # 程序1: 实现简单的shell sed替换功能 import sys #判断参数个数 if len(sys.a ...

  8. day06_04 购物车讲解02

    1.0 补充知识 a,b = [2,3] print(a) print(b) #>>>2 #>>>3 a,b = (2,3) print(a) print(b) # ...

  9. ASP.net MVC入门及Razor语法

    一.MVC入门: 1.MVC简介 约定大于配置 2.MVC访问流程 csthml模板(razor模板)就是简化HTML的拼接的模板,最终还是生成html给浏览器显示,不能直接访问cshtml文件. 二 ...

  10. C#泛型和泛型约束

    一.泛型: 所谓泛型,即通过参数化类型来实现在同一份代码上操作多种数据类型.泛型编程是一种编程范式,它利用“参数化类型”将类型抽象化,从而实现更为灵活的复用. 二.泛型约束: 转自:http://ww ...