R语言-散点图进阶
1.分组散点图
①xyplot()函数
> library(lattice)
> xyplot(mpg~disp, #定义Y~X轴
+ data=mtcars,
+ groups=cyl, #定义分组
+ auto.key=list(corner=c(1,1))) #设置图例

②qplot()函数
> library(ggplot2) #加载包
> qplot(disp,mpg,data=mtcars,
+ col= as.factor(cyl)) #用颜色分组
> qplot(disp,mpg,data=mtcars,
+ shape=as.factor(cyl)) #用形状分组
> qplot(disp,mpg,data=mtcars,
+ size=as.factor(cyl)) #用大小分组



2.添加标识点 #text()函数
> health<-read.csv("HealthExpenditure.csv",header=TRUE)
> plot(health$Expenditure,health$Life_Expectancy,type="n") #定义X轴,Y轴,以无散点形式画图
> text(health$Expenditure,health$Life_Expectancy,health$Country) #以坐标添加城市名为标识点

3.相关系数散点图
> panel.cor <- function(x, y, ...)
+ {
+ par(usr = c(0, 1, 0, 1)) #自定义每个坐标系范围
+ txt <- as.character(format(cor(x, #cor计算相关系数,as.character转换为字符串
+ y), digits=2)) #digits=2保留两位小数
+ text(0.5, 0.5, txt, cex = 6* #以(0.5,0.5)的坐标标识相关系数
+ abs(cor(x, y))) #数字大小为相关系数的六倍
+ }
> pairs(iris[1:4], #以iris数据集的1到4列两两组合画散点图
+ upper.panel=panel.cor) #右上方的三角形区域画相关系数代替散点图

4.误差条 #arrows()函数
> plot(mpg~disp,data=mtcars)
> arrows(x0=mtcars$disp, #设置起始点
+ y0=mtcars$mpg*0.95, #设置向下的终点
+ x1=mtcars$disp,
+ y1=mtcars$mpg*1.05, #设置向上的终点
+ angle=90, #设置角度
+ code=3, #设置样式
+ length=0.04, #设置长度
+ lwd=0.4) #设置宽度
> arrows(x0=mtcars$disp*0.95, #设置向左的终点
+ y0=mtcars$mpg, #设置起始点
+ x1=mtcars$disp*1.05,
+ y1=mtcars$mpg,
+ angle=90,
+ code=3,
+ length=0.04,
+ lwd=0.4)

5.密集散点图 #jitter()函数:给向量加上少许噪音
> x <- rbinom(1000, 10, 0.25) #随机生成1000个均值为10*0.25=2.5的数
> y <- rbinom(1000, 10, 0.25)
> plot(x,y)
> plot(jitter(x), jitter(y))

6.三维散点图 #scatterplot3d()函数
> library(scatterplot3d)
> scatterplot3d(x=mtcars$wt,
+ y=mtcars$disp,
+ z=mtcars$mpg)

> scatterplot3d(mtcars$wt,mtcars$disp,mtcars$mpg,
+ pch=16, #实心散点
+ highlight.3d=TRUE, #设置渐变颜色
+ angle=20, #X和Y轴的夹角
+ xlab="Weight",
+ ylab="Displacement",
+ zlab="Fuel Economy (mpg)",
+ type="h", #画散点垂直线
+ main="Relationships between car specifications")

7.QQ图(检验数据是否服从正态分布)
> qqnorm(mtcars$mpg) #画散点
> qqline(mtcars$mpg) #画线(如果为一条直线,则数据服从正态分布)

8.密度表示 #rug()函数
> metals<-read.csv("metals.csv")
> plot(Ba~Cu,data=metals,xlim=c(0,100)) #画散点图
> rug(metals$Cu) #密度表示(默认画在X轴方向)
> rug(metals$Ba,
+ side=2, #在Y轴方向表示
+ col="red",
+ ticksize=0.02) #设置长度

9.雾化散点图 #smoothScatter()函数
> n <- 10000
> x <- matrix(rnorm(n), ncol=2)
> y <- matrix(rnorm(n, mean=3,sd=1.5), ncol=2)
> smoothScatter(x,y)

R语言-散点图进阶的更多相关文章
- R语言编程艺术(5)R语言编程进阶
本文对应<R语言编程艺术> 第14章:性能提升:速度和内存: 第15章:R与其他语言的接口: 第16章:R语言并行计算 ================================== ...
- R语言实战(七)图形进阶
本文对应<R语言实战>第11章:中级绘图:第16章:高级图形进阶 基础图形一章,侧重展示单类别型或连续型变量的分布情况:中级绘图一章,侧重展示双变量间关系(二元关系)和多变量间关系(多元关 ...
- 第五篇:R语言数据可视化之散点图
散点图简介 散点图通常是用来表述两个连续变量之间的关系,图中的每个点表示目标数据集中的每个样本. 同时散点图中常常还会拟合一些直线,以用来表示某些模型. 绘制基本散点图 本例选用如下测试数据集: 绘制 ...
- 【R笔记】R语言进阶之4:数据整形(reshape)
R语言进阶之4:数据整形(reshape) 2013-05-31 10:15 xxx 网易博客 字号:T | T 从不同途径得到的数据的组织方式是多种多样的,很多数据都要经过整理才能进行有效的分析,数 ...
- R语言与医学统计图形【2】散点图、盒形图
R语言基础绘图系统 基础图形--散点图.盒形图 plot是一个泛型函数(generic method),对于不同的数据绘制不同的图形. par函数的大部分参数在plot中通用. 1.散点图 plot绘 ...
- r语言之散点图绘制及参数
一个简单的例子: > plot(cars$dist~cars$speed,+ main="车位移与速度的关系",+ xlab="速度",+ ylab=&q ...
- R语言进阶之4:数据整形(reshape)
一.通过重新构建数据进行整形 数据整形最直接的思路就把数据全部向量化,然后按要求用向量构建其他类型的数据.这样是不是会产生大量的中间变量.占用大量内存?没错.R语言的任何函数(包括赋值)操作都会有同样 ...
- R语言 ggplot2包
R语言 ggplot2包的学习 分析数据要做的第一件事情,就是观察它.对于每个变量,哪些值是最常见的?值域是大是小?是否有异常观测? ggplot2图形之基本语法: ggplot2的核心理念是将 ...
- R语言函数总结(转)
R语言特征 对大小写敏感 通常,数字,字母,. 和 _都是允许的(在一些国家还包括重音字母).不过,一个命名必须以 . 或者字母开头,并且如果以 . 开头,第二个字符不允许是数字. 基本命令要么是表达 ...
随机推荐
- Python学习笔记第二十六周(Django补充)
一.基于jQuery的ajax实现(最底层方法:$.jax()) $.ajax( url: type:''POST“ ) $.get(url,[data],[callback],[type]) #c ...
- Flask+uwsgi+virtualenv环境配置
Linux系统版本: SLES12sp3 (阿里云) 1. 首先需要安装python-devel,否则后续安装会报错! rpm -qa|grep python-base 结果: python-base ...
- iis发布----在XP中发布高版本web遇到问题总结
解决方法是之前在网上看到的,总结一下. 我在vs2010中做的web网页,放到XP系统中发布是遇到问题,XP中的iis版本是iis. 提示.net framework版本上的问题. 1.在网站属性中把 ...
- 用doxygen自动生成文档
1. 添加符合doxygen解析规则的注释 (比如函数说明,函数参数/返回值说明) 用qt-creator可以在函数上方一行键入“/**”,然后直接回车,就可以自动生成默认的格式. 2. 安装doxy ...
- BNF
Backus-Naur Form, 巴科斯-诺尔 范式:一种描述高级语言语法的表示法. BNF 符号概览 符号 描述 ::= 该符号左边的元素被该符号右边的结构所定义 *: 该符号前面的结构可以重复零 ...
- esxi5 的tart命令使用注意点
esxi5.0 注意tar命令参数使用和centos6稍微有点不一样,注意下 注意需要把-f参数单独分离出来,紧接着文件. 而不能和cz命令一起用 ~ # touch abc.txt ~ # ec ...
- 算法笔记 3.2 codeup1934 找X
#include <stdio.h> ; int a[maxn]; int main(void){ int n; while(scanf("%d", &n)!= ...
- HTTPS协议加密原理解析
用 HTTP 协议,看个新闻还没有问题,但是换到更加严肃的场景中,就存在很多的安全风险.例如你要下单做一次支付,如果还是使用普通的 HTTP 协议,那你很可能会被黑客盯上. 比如,你发送一个请求,说我 ...
- Logistic Loss的简单讨论
首先应该知道Logistic Loss和Crossing Entropy Loss本质上是一回事. 所以所谓的SoftMaxLoss就是一般二分类LogisitcLoss的推广.之所以在网络中采取这种 ...
- mongo数据的导入(mongoimport)和导出(mongoexport)
1.导出数据可以使用命令: mongoexport -h dbhost -d dbname -c collectionName -o output 参数说明: -h 数据库地址 -d 指明使用的库 - ...