在R语言中,会根据数据的范围自动计算x轴和y轴的范围,举个例子

比如绘制一个1到5的散点图:代码示例:

plot(1:5, 1:5)

生成的图片如下:

从图片中我们可以看到,x轴的起始位置比1要小,终止范围比5要大,y轴也是同样的道理,那么x轴和y轴具体的范围是多少呢?

这个问题的答案,其实就是usr 参数的值

在图片绘制完成之后,接着输入  par("usr")  ,我们就可以看到坐标轴具体的范围了,对于这幅图片来说,返回值为

par("usr")
[1] 0.84 5.16 0.84 5.16

一共4个值,范围对应 x轴的起始, x轴的终止,y轴的起始,y轴的终止 , 所以x轴和y轴的起始位置为0.84, 终止位置为5.16

0.84和5.16 是如何计算得到的呢?

在R语言中,会根据数据的范围,在起始和终止点多增加4%的区间,以便更好的标记数据的起始和终止坐标

在上面的图中,x轴的最小值为1, 最大值为5, 数据跨度为4, 4 * 4% = 0.16, 所以默认的起始位置为 1 - 0.16 = 0.84, 终止位置为 5 + 0.16 = 5.16

这样的默认行为实际上是通过 xaxs 和 yaxs 两个参数的值来控制的,在R语言中,这两个参数的取值包括 "r" 和 "i" 两种,其中"r"是默认值,具体的行为就是我们上边讲到的添加4%的一个距离,"i" 代表的行为是,原始数据的最小值到最大值是多少,对应的坐标轴的起始和终止位置就是多少

代码示例:

par(xaxs = "i", yaxs = "i")
plot(1:5, 1:5)

生成的图片如下所示:

从图中可以看到,坐标轴的范围和数据的最小值和最大值对应了起来

par函数usr参数-控制坐标系的范围的更多相关文章

  1. par函数col参数-控制颜色

    col参数用来控制颜色,其实有一些列的颜色相关的参数,都是以col 开头 col : 控制图片中点,文字以及绘图边框的颜色,代码示例: par(col = "red") plot( ...

  2. par函数cex参数-控制文字和点的大小

    cex参数用来控制图片中点和文字的大小,对于一副图片来说,有很多的文字部分,包括x轴标签(xlab), y轴标签(ylab), x轴刻度上的文字, y轴刻度上的文字,主标题(main), 副标题(su ...

  3. par函数mgp 参数-控制坐标轴的位置

    mgp 参数的值为长度为3的一个向量,默认值为 c(3, 1, 0); 3个数值控制的元素不同 1) 第一个数值:3, 控制xlab 和  ylab的位置 示例用法: par(mfrow = c(1, ...

  4. par函数family参数-控制文字的字体

    family用于控制文字的字体, 标准的取值范围为serif, sans, mono, 其中sans 为默认值 基本用法,代码示例: par(mfrow = c(1,3)) par(cex = 1.5 ...

  5. par函数fg参数-控制前景色

    fg参数用来控制前景色,其实指的就是x轴和y轴的轴线和刻度线的颜色 在R语言中,会根据fg, col 任何一个参数的值,自动的将两个参数的值设置为相同的值,举个例子: par(fg = "r ...

  6. par函数bty参数-控制绘图边框

    bty 可以看作box type 的缩写,控制绘图边框的显示,取值范围为o, l, u, c, ], n 默认值为"o", 代码示例: par(bty = "o" ...

  7. R中的par()函数的参数

    把R中par()函数的主要参数整理了一下(另外本来还整理了每个参数的帮助文档中文解释,但是太长,就分类之后,整理为图表,excel不便放上来,就放了这些表的截图)

  8. par函数pch参数-控制点的形状

    pch函数用来控制点的形状,这个参数不仅在par函数中有,在大多数的高级绘图函数中都有. 代码示例: plot(rep(1:5, times = 5), rep(5:1, each = 5), pch ...

  9. par函数的las参数-控制x轴和y轴标签的方向

    las 参数控制x轴和y轴的刻度线上的标签与两条轴的防线,可选值为0,1,2,3 0为默认值,代表始终与刻度线平行,代码示例: par(las = 0) plot(1:5, 1:5, main = & ...

随机推荐

  1. InnoDB Master Thread I/O Rate详解

    一.innodb 在刷盘时要面对的问题: 1.对于innodb 的master thread 这个线程来说,它会在后台执行许多的任务,这些任务大多数都是与IO操作相关的, 比如“刷新脏页到磁盘”.“合 ...

  2. Ruby gem 更换国内源

    gem sources --add http://gems.ruby-china.org/ --remove https://rubygems.org/

  3. linux内存管理之DMA

    说起DMA我们并不陌生,但是实际编程中去用的人不多吧,最多就是网卡驱动里的环形buffer,再有就是设备的dma,下面我们就分析分析.   DMA用来在设备内存和内存之间直接数据交互.而无需cpu干预 ...

  4. News summary on C# and .NET

    (keep updating...) Roslyn http://blogs.msdn.com/b/ericlippert/archive/2012/06/05/announcing-microsof ...

  5. JS教程:window.location使用方法的区别

    介绍了window.location使用方法的区别. window.location.href=&http://www.jbxue.com/javascript/ldquo;url”:改变ur ...

  6. RhinoMock学习-Stub方法

    // Arrange var stub = MockRepository.GenerateStub<IDemo>(); stub.Stub(x => x.StringArgStrin ...

  7. WCF入门学习3-配置文件与部署iis

    配置文件设置 --------------------------------------------------- 创建的时候都会有个配置文件,其实有一个WCF配置编辑器,右键就可以点出来设置. 需 ...

  8. Diamond 3.5简易教程(二)------软件的简单使用

    二.软件的简单使用 工程建立后我们就可以进行程序的编写添加了. 选择左下角file list 选项卡 这里主要是工程的信息. 在input files 上右键弹出选项addànew file... 在 ...

  9. Linux命令(27):shell 结合expect,多服务器批量分发数据

    shell 结合expect 写的批量scp脚本工具 except安装:http://www.cnblogs.com/lovychen/p/6525623.html expect用于自动化地执行lin ...

  10. js 轮播插件

    flexslider pc插件 个人用过 flickerplate 移动端插件 个人用过 个人觉得比较好的移动端插件 swiper  http://www.swiper.com.cn/  用过 个人觉 ...