-
R语言作图:坐标轴设置
2018-02-04 20:51:24要绘制一张赏心悦目的统计图表,坐标轴的设置至关重要。在R语言底层作图中,对坐标轴的调整主要通过调整plot函数、axis函数和title函数的一系列参数完成。 plot(x,y, ...) axis(side,at = NULL, labels = TRUE, ...要绘制一张赏心悦目的统计图表,坐标轴的设置至关重要。在R语言底层作图中,对坐标轴的调整主要通过调整plot函数、axis函数和title函数的一系列参数完成。
plot(x,y, ...)
axis(side,at = NULL, labels = TRUE, tick = TRUE, line = NA,
pos= NA, outer = FALSE, font = NA, lty = "solid",
lwd = 1, lwd.ticks = lwd, col = NULL,col.ticks = NULL,
hadj = NA, padj = NA, ...)
title(main= NULL, sub = NULL, xlab = NULL, ylab = NULL,
line = NA, outer = FALSE, ...)
一、plot函数的准备
在个性化设置坐标轴之前中,通常需调整plot函数中的ann、bty、xaxt、yaxt、xaxs和yaxs参数:
ann取FALSE时将不会画出标题(包括主、副标题及坐标轴标题);
bty用来设置边框形式,默认值为"o",表示四面边框都画出,其余可选值包括"l"(左下)、"7"(上右)、"c"(上下左)、"u"(左下右)、"]" (上下右)和"n"(无,即不画边框),在很多个性化绘图中,bty设为"n",后期的边框线再使用其他函数(如axis)自行添加;
xaxs和yaxs 用来设置x轴和y轴的范围,默认值取“r”,表示坐标轴比给定作图范围(参数xlim和ylim给出的范围)稍微大一点儿,取”i”时表示坐标轴范围与给定作图范围完全相同,另外还可取”s”、”e”、”d”;
xaxt和yaxt 取”n”时,坐标轴、刻度线以及刻度值将不会画出。
x <- seq(-4, 4, 0.01) y <- x^2 par(mfrow = c(2, 2), mar = c(4, 4, 1, 1)) plot(x, y) # 未作处理 plot(x, y, xaxs = "i", yaxs ="i") # 绘图边框未留白 plot(x, y, bty = 'l') # 只保留左和下两条边框 plot(x, y, ann = F, bty = "n", xaxt = "n", yaxt ="n") # 边框、坐标轴都去掉
二、axis函数的用法
1、基本操作
side表示要操作的坐标轴,取值1、2、3、4分别代表下、左、上、右;
at表示刻度线及刻度值所在位置;
labels表示刻度值;
las表示坐标刻度值文字方向,las=0表示文字方向与坐标轴平行,1表示始终为水平方向,2表示与坐标轴垂直,3表示终为垂直方向。
x<- seq(-4, 4, 0.01) y<- x^2 par(mfrow=c(1, 2), mar = c(4, 4, 1, 1)) #未设置文字方向 plot(x,y, ann = F, xaxt = "n", yaxt = "n") axis(1,-4:4, -4:4) axis(2,seq(0, 16, 4), seq(0, 16, 4)) #文字方向水平 plot(x,y, ann = F, xaxt = "n", yaxt = "n") axis(1,-4:4, -4:4, las = 1) axis(2,seq(0, 16, 4), seq(0, 16, 4), las = 1)
2、字体字号
cex.axis表示坐标轴刻度值的字号大小,
font.axis表示坐标轴刻度值的字体,font=1表示正体,2表示黑体,3表示斜体,4表示黑斜体。
x<- seq(-4, 4, 0.01) y<- x^2 par(mfrow=c(2, 2), mar = c(4, 4, 1, 1)) #未设置字体字号 plot(x,y, ann = F, xaxt = "n", yaxt = "n") axis(1,-4:4, -4:4) #cex.axis = 2 plot(x,y, ann = F, xaxt = "n", yaxt = "n") axis(1,-4:4, -4:4, cex.axis = 2) #font.axis = 2 plot(x,y, ann = F, xaxt = "n", yaxt = "n") axis(1,-4:4, -4:4, font.axis = 2) #font.axis = 3 plot(x,y, ann = F, xaxt = "n", yaxt = "n") axis(1,-4:4, -4:4, font.axis = 3)
3、颜色
col表示图的颜色,用在axis函数中表示坐标轴线和坐标刻度线的颜色;
col.axis表示坐标轴刻度值的颜色;
col.ticks表示坐标轴刻度线的颜色。
x<- seq(-4, 4, 0.01) y<- x^2 par(mfrow=c(2, 2), mar = c(4, 4, 1, 1)) #未设置颜色 plot(x,y, ann = F, bty = "n", xaxt = "n", yaxt = "n") axis(1,-4:4, -4:4) #col = 2 plot(x,y, ann = F, bty = "n", xaxt = "n", yaxt = "n") axis(1,-4:4, -4:4, col = 2) #col.axis = 2 plot(x,y, ann = F, bty = "n", xaxt = "n", yaxt = "n") axis(1,-4:4, -4:4, col.axis = 2) #col.ticks = 2 plot(x,y, ann = F, bty = "n", xaxt = "n", yaxt = "n") axis(1,-4:4, -4:4, col.ticks = 2)
4、位置
line表示坐标轴线位置与图像边框的距离,取负数时会画在图像边框以内;
mgp默认值为c(3, 1, 0),三个数字分别代表坐标轴标题、刻度值和轴线与绘图边框的距离;
tcl默认值为-0.5,数值表示刻度线长度,负值表示刻度线朝外,正值朝里;
pos 表示轴线所在的位置;
line.outer取TRUE时,坐标轴将画在画布边缘处;
hadj指将刻度值沿平行坐标轴方向调整的距离;
padj指将刻度值沿垂直坐标轴方向调整的距离。
x <- seq(-4, 4, 0.01) y <- x^2 par(mfrow= c(2, 2), mar = c(4, 4, 1, 1)) # 未设置刻度值位置 plot(x, y, ann = F, xaxt = "n", yaxt ="n") axis(1, -4:4, -4:4) # 使用line调整刻度值位置 plot(x, y, ann = F, xaxt = "n", yaxt ="n") axis(1, -4:4, -4:4, line = 2) # 使用mgp调整刻度值位置 plot(x, y, ann = F, xaxt = "n", yaxt ="n") axis(1, -4:4, -4:4, mgp = c(3, 2, 0)) # 使用padj调整刻度值位置 plot(x, y, ann = F, xaxt = "n", yaxt ="n") axis(1, -4:4, -4:4, padj = 1)
5、其他
tick取FALSE时,坐标轴线和刻度线不画出;
lty表示线型,用在axis函数中表示坐标轴线型;
lwd表示线的粗细,用在axis函数中表示坐标轴线粗细;
lwd.ticks表示刻度线粗细。
三、title函数的用法
main、sub、xlab和ylab分别表示主标题、副标题、x轴标题和y轴标题;
cex.lab表示坐标轴标题的字号大小;
font.lab表示坐标轴标题的字体;
col.lab表示坐标轴标题的颜色;
其余参数和axis中用法一致。
x<- seq(-4, 4, 0.01) y<- x^2 par(mfrow=c(2, 2), mar = c(4, 4, 1, 1)) #无标题 plot(x,y, ann = F, xaxt = "n", yaxt = "n") axis(1,-4:4, -4:4) axis(2,seq(0, 16, 4), seq(0, 16, 4)) #使用title设置标题 plot(x,y, ann = F, xaxt = "n", yaxt = "n") axis(1,-4:4, -4:4, las = 1) axis(2,seq(0, 16, 4), seq(0, 16, 4), las = 1) title(xlab= 'x', ylab = 'y') #使用line调整位置 plot(x,y, ann = F, xaxt = "n", yaxt = "n") axis(1,-4:4, -4:4, las = 1) axis(2,seq(0, 16, 4), seq(0, 16, 4), las = 1) title(xlab= 'x', ylab = 'y', line = 2) #调整颜色字体字号 plot(x,y, ann = F, xaxt = "n", yaxt = "n") axis(1,-4:4, -4:4, las = 1) axis(2,seq(0, 16, 4), seq(0, 16, 4), las = 1) title(xlab= 'x', ylab = 'y', col.lab = 2, font.lab = 4, cex.lab = 2)
四、刻度间隔
plot函数会自动给出比较合理的刻度间隔,本质上是调用了pretty函数。
pretty(x, n = 5, min.n = n %/% 3, shrink.sml = 0.75,
high.u.bias = 1.5, u5.bias = .5 + 1.5*high.u.bias,
eps.correct = 0, ...)x是一个序列,pretty函数会先对x取一个range,然后等分为大约n+1个间隔。如果在作图时对系统自动给出的间隔不满意,可以调整n的值,用pretty函数自定义合适的间隔。
-
坐标
2013-03-20 15:02:55bd09经纬度坐标。允许的值为bd09ll、bd09mc、gcj02、wgs84。bd09ll表示百度经纬度坐标,bd09mc表示百度墨卡托坐标,gcj02表示经过国测局加密的坐标,wgs84表示gps获取的坐标bd09经纬度坐标。允许的值为bd09ll、bd09mc、gcj02、wgs84。bd09ll表示百度经纬度坐标,bd09mc表示百度墨卡托坐标,gcj02表示经过国测局加密的坐标,wgs84表示gps获取的坐标
-
-
如何将谷歌地图高清卫星影像坐标系转换成西安80坐标(WGS84)
2016-09-13 12:00:46如何将下载的影像变换为西安80坐标? 利用ARCGIS进行自定义坐标系和投影转换 ARCGIS种通过三参数和其参数进行精确投影转换 注意:投影转换成80坐标系需要下载无偏移卫星图像进行转换,有偏移的转换将导致转换后的...如何将下载的影像变换为西安80坐标?
同步视频教程:投影转换(转西安80)
下载:全国路网数据、全国水系矢量 行政区划边界(省市区县)、行政地名 矢量数据
注意:投影转换成80坐标系需要下载无偏移卫星图像进行转换,有偏移的转换将导致转换后的卫星图像扭曲,坐标错误,无法配准。
第一步:选择无偏移地图源,下载你所需要的卫星图像。
第二步:选择BIGEMAP软件右边工具栏,选择【投影转换】,如下图所示:
2.1 选择说明:
1. 源文件:选择下载好的卫星图像文件(下载目录中后缀为tiff的文件)
2. 源坐标系:打开的源文件的投影坐标系(自动读取,不需要手动填写)
3. 输出文件:选择转换后你要保持文件的文件路径和文件名
4. 目标坐标系:选择你要转换成的目标坐标系,如下图:
选择上图的更多,如下图所示:
1:选择 -Xi'an 1980 2:选择地区 3:选择分度带对应的带号(一般默认,也可以手动修改)
选择对应的分度带或者中央子午线(请参看:如何选择分度带?),点击【确定】
5. 重采样算法:投影转换需要将影像的像素重新排列,一次每种算法的效率不一样,一般选择【立方卷积采样】,以达到最好的效果。如下图:
6. 指定变换参数:在不知道的情况下,可以不用填此处信息,如果√上,则如下图:
此参数为【三参数】或者【七参数】,均为国家保密参数,需要到当地的测绘部门或者国土部门,以单位名义签保密协议进行购买,此参数各地都不一样,是严格保密的,请不要随便流通。
第三步:点击【确定】,开始转换,如下图:
第四步:完成后,打开你刚才选择的输出文件夹,里面就是转换后的卫星图像。
第五步:如果你需要套合你手里已经有的矢量文件,请参看:【BIGEMAP无偏移影像叠加配准】
-
【ArcGIS风暴】ArcGIS 10.2导入Excel数据X、Y坐标(经纬度、平面坐标),生成Shapefile点数据图层
2018-04-22 13:44:23用过CASS的人都知道,野外数字测图得到的点数据(平面坐标)可以直接导入到CASS中,进一步绘制地形图。那么,带有坐标的数据能不能在ArcGIS中实现点图层的生成呢?答案是必须的! 本文以气象台站shp数据的生成为例...用过CASS的人都知道,野外数字测图得到的点数据(平面坐标)可以直接导入到CASS中,进一步绘制地形图。那么,带有坐标的数据能不能在ArcGIS中实现点图层的生成呢?答案是必须的!
本文以气象台站shp数据的生成为例,详细介绍ArcGIS 10.2中导入X、Y坐标(这里指的是经度、纬度),生成Shapefile点数据的流程。
相关阅读:《全站仪、RTK测量坐标数据在CASS和ArcGIS中展点的区别和联系》
目录
1、数据准备
链接:https://pan.baidu.com/s/1eaulWklowfB-Qd5S-7wnkA
提取码:4ugl2、添加X、Y数据
(1)【文件】→【添加数据】→【添加XY数据】
add xy data (2)选择“气象台站.xlsx”中的sheet“气象台站”,X字段为经度,Y字段为纬度,Z字段为高程(此处没有),选择地理坐标系CGCS2000。
注意:坐标系只能选择地理坐标系,而不能选择投影坐标系!!!
选取字段、坐标系 点击【确定】。
(3)结果展示
3、属性表连接(Join)
属性表连接为可选项,可以不用连接,本文以连接各个气象台站的气温和降水数据为例。
(1)数据准备:气温降水.xlsx(点击下载)
(2)属性表连接
(3)结果展示
4、导出为Shapefile矢量数据
5、自定义投影转换
为了后面的计算面积等操作方便,现进行投影转换,本文自定义一个Albers投影,并进行投影转换。
注意:Albers投影的参数为中央经线105,标准纬线一25,标准纬线二47。
结果展示:
刘一哥GIS:专注GIS教育,探索GIS奥秘,分享GIS价值 !
-
地理坐标系与投影坐标系的区别
2018-08-17 22:57:17平时开展GIS开发、研究、应用工作,总会接触到坐标系,也会遇到坐标转换的问题,如地理坐标系、投影坐标系等。 地理坐标系是球面坐标,参考平面是椭球面,坐标单位是经纬度; 投影坐标系是平面坐标系,参考平面... -
坐标系
2020-03-11 11:06:23坐标系(coordinate system、CS) 由两个、三个甚至更多个坐标轴,单位标度等组成,使得可利用数学法则计算距离、角度或其他几何元素。如坐标轴相互垂直的笛卡尔(Cartesian)坐标系;坐标轴不必相互垂直的仿射... -
利用七参数进行CGCS2000坐标系到西安80坐标系的转换
2016-01-22 18:50:34因为工作,需要把CGCS2000坐标系下的坐标转到西安80坐标系下,中间由于用到了七参数,所以要进经过到空间直角坐标系的转换,然后再转换到西安80大地坐标下,最后再投影到西安80坐标的某度带。 要求是输入CGCS... -
笛卡尔坐标系
2019-04-10 20:01:41笛卡尔坐标系 在数学里,笛卡尔坐标系 (Cartesian coordinate system),亦称直角坐标系,是一种正交坐标系。二维的直角坐标系是由两条相互垂直、相交于原点的数线构成的。在平面内,任何一点的坐标是根据数轴上对应... -
MATLAB 设置坐标名称,坐标刻度,坐标刻度名称,坐标点显示
2019-06-25 16:08:33可以用matlab提供的坐标轴设置函数axis进行设置(对当前坐标轴进行设置),具体用法如下: plot(x, y); // 画图后用axis函数设置坐标轴的范围 axis([xmin xmax ymin ymax]); % 设置坐标轴在指... -
坐标系投影转换CGCS2000坐标系(国家2000坐标系)等高线地形图
2019-01-21 18:19:09CGCS2000是(中国)2000国家大地坐标系的缩写,该坐标系是通过中国GPS 连续运行基准站、 空间大地控制网以及天文大地网与空间地网联合平差建立的地心大地坐标系统。2000(中国)国家大地坐标系以ITRF 97 参考框架为... -
计算机视觉:相机成像原理:世界坐标系、相机坐标系、图像坐标系、像素坐标系之间的转换
2016-12-10 14:49:46相机成像原理:世界坐标系、相机坐标系、图像坐标系、像素坐标系之间的转换 -
你必须知道的地理坐标系和投影坐标系
2017-03-24 17:34:21你必须知道的地理坐标系和投影坐标系 -
Unity 世界坐标 屏幕坐标 视口坐标 GUI坐标
2018-07-20 11:54:06世界坐标: transform.position获取的是世界坐标 屏幕坐标: 单位像素 屏幕左下角(0,0)右上角(Screen.width,Screen.height) Screen.width = Camera.main.pixelWidth; Screen.height = Camera.main.... -
世界坐标系,相机坐标系和图像坐标系的转换(Python)
2020-02-05 16:45:40世界坐标系,相机坐标系和图像坐标系的转换(Python) 相机内参外参说明:https://panjinquan.blog.csdn.net/article/details/102502213 计算机视觉:相机成像原理:世界坐标系、相机坐标系、图像坐标系、像素坐标系... -
地理坐标(经纬度坐标)和屏幕坐标(xy坐标)间的转换
2019-10-28 10:31:57在我们的屏幕上,有一张地图,这张地图经过缩放、平移、旋转,最终地理坐标和屏幕坐标的关系大致如下图所示: 这种关系要怎么描述呢?我们可以假设地图是一张纸,而屏幕是一堵墙。只要我们有两个图钉,我们就能把... -
像素坐标、相机坐标、世界物理坐标之间的坐标转换条件。
2016-11-01 12:16:511、从像素坐标直接变化为世界物理坐标 下面是两者直接的主要的变化关系: 其中的前俩个可以以变化为一个3*3的矩阵,但是R|T是3*4的矩阵,当我们想把其进行合并成一个矩阵的时候,需要对其进行变化, 变换的规则是... -
python_matplotlib改变横坐标和纵坐标上的刻度(ticks)
2018-09-10 20:00:24用matplotlib画二维图像时,默认情况下的横坐标和纵坐标显示的值有时达不到自己的需求,需要借助xticks()和yticks()分别对横坐标x-axis和纵坐标y-axis进行设置。 import numpy as np import matplotlib.pyplot as ... -
直角坐标,柱坐标,球坐标变换
2019-12-31 06:29:24直角坐标(Cartesian),柱坐标(Cylindrical),球坐标(Spherical)之间的变换的结果非常容易在网上找到,但是推到过程不是那么的完善, 在这里记录一下。它们三者都是欧氏几何右手坐标系。 直角坐标系 柱坐标系 球坐标... -
世界坐标、相机坐标、图像坐标、像素坐标的原理、关系,并用matlab仿真
2018-08-27 17:34:26世界坐标、相机坐标、图像坐标、像素坐标的原理、关系,并用matlab仿真 照相机是日常生活中最常见的。它能把三维的空间图片等比例缩小投影在照片上,称为一个二维图像。 以下我们就讲一讲原理,并相应的进行matlab... -
世界坐标系和相机坐标系,图像坐标系的关系
2016-01-25 15:35:34二、图像坐标:我想和世界坐标谈谈(B) 玉米将在这篇博文中,对图像坐标与世界坐标的这场对话中涉及的第二个问题:谈话方式,进行总结。世界坐标是怎样变换进摄像机,投影成图像坐标的呢? 玉米做了一个简单的... -
百度地图坐标系统解析
2019-06-22 14:55:52在地球上我们通过经纬度来描述某个位置,而经过投影之后的地图也有自己的坐标系统,本篇文章就来详细介绍在百度地图API中涉及的各种坐标体系。 在百度地图API中,你需要了解如下坐标系: 经纬度:通过经度... -
导航基础之坐标系整理——导航坐标系、地球坐标系、载体坐标系
2020-01-07 17:06:48概述 在三维空间中,无约束的物体具有6个自由度,即三个方向的位置和三个欧拉角。故在导航中,明确坐标系的定义是基础。 ...导航坐标系可以是地固坐标系、地理坐标系等等,通常使用的是当地水... -
matlab设定坐标轴范围和坐标轴显示
2018-12-03 11:22:33设定坐标轴范围: 最简单的办法 axis([xmin,xmax,ymin,ymax]); 分坐标轴设定: xlim([xmin,xmax]);%对X轴设定显示范围 ylim([ymin,ymax]);%对Y轴设定显示范围 zlim([zmin,zmax]);%对Z轴设定显示范围 ... -
坐标系旋转后的点坐标、坐标点旋转后的点坐标
2018-05-24 19:38:32坐标系旋转后的点坐标、坐标点旋转后的点坐标 1. 坐标系旋转后的点坐标 -
MATLAB设置坐标轴坐标
2019-10-18 20:25:45问题:设置坐标轴的任意坐标 比如x轴的范围是从0到500,想设置成47、98、321。此处数字任意,想设置成什么就设置成什么。 解决 编辑——坐标轴属性 右下角更多属性 属性栏中下拉选择XTick 追加、删除自己想要的... -
球坐标系
2019-06-28 14:56:48球坐标系是三维坐标系的一种,用以确定三维空间中点、线、面以及体的位置,它以坐标原点为参考点,由方位角、仰角和距离构成。球坐标系在地理学、天文学中都有着广泛应用。 球坐标系 球坐标中是这样表示空间中... -
unity 七种坐标系统详解与互相转换的方法 模型坐标、世界坐标、观察坐标(视口坐标)、裁剪坐标、屏幕坐标...
2018-06-22 13:09:212,ui坐标,在canvas中的ui坐标。数据类型是vector3 3,世界坐标,三维世界坐标 数据类型是vector3 Unity3D的四种坐标系 【Unity3D的四种坐标系】 1、World Space(世界坐标):我们在场景中添加物体... -
世界坐标系、相机坐标系、图像平面坐标系
2018-07-12 18:04:09一、四个坐标系简介和转换 相机模型为以后一切标定算法的关键,只有这边有相当透彻的理解,对以后的标定算法才能有更好的理解。本人研究了好长时间,几乎每天都重复看几遍,最终才会明白其推导过程。 &...
-
旋翼无人机的一种控制办法代码+注释
-
抖音任务点赞平台源码.zip
-
朱老师C++课程第3部分-3.6智能指针与STL查漏补缺
-
在 Linux 上构建企业级 DNS 域名解析服务
-
网络编程6:网路同步请求和异步请求
-
摄影测量之内定向程序.zip
-
QHVlcPlayer.rar
-
工程制图 AutoCAD 2012 从二维到三维
-
华为1+X认证——网络系统建设与运维(初级)
-
MySQL 性能优化(思路拓展及实操)
-
Mycat 实现 MySQL的分库分表、读写分离、主从切换
-
envixo应用程序-源码
-
ELF视频教程
-
Galera 高可用 MySQL 集群(PXC v5.7+Hapro)
-
安卓应用开发视频!整理几个重要的Android知识,大厂直通车!
-
MySQL 高可用(DRBD + heartbeat)
-
安卓娱乐开发!浅谈Android消息机制原理,快来收藏!
-
linux基础入门和项目实战部署系列课程
-
安卓实战开发项目开源!字节跳动Android岗经典面试真题,再不刷题就晚了!
-
维沙德-源码