第一,xpd=NA,否则绘制箭头只会显示一半
xpd参数说明:A logical value or NA. If FALSE, all plotting is clipped to the plot region, if TRUE, all plotting is clipped to the figure region, and if NA, all plotting is clipped to the device region.
第二,横纵坐标由于默认是多增加4%的区间,因此要么设置xaxs=“i" 和 yaxs ="i",让坐标轴交于结束位置
或者直接用par()['usr'][[1]] 找出绘制的起点和终点
在R语言中,这两个参数的取值包括 5种,其中"r"是默认值,就是我们上边讲到的添加4%的一个距离,"i" 代表的行为是原始数据的最小值到最大值是多少,对应的坐标轴的起始和终止位置就是多少
举例:par(xpd=NA)
plot(c(1:10),c(1:10),type="l",bty="l",xlab="X",ylab="Y")
ord<-par("usr")
arrows(x0 = ord[1],y0=ord[3],x1=ord[2]*1.05,y1=ord[3])
arrows(x0 = ord[1],y0=ord[3],x1=ord[1],y1=ord[4]*1.05)
绘制
解决这个问题的方法如下:
1、首先在R中,plot函数作图时会自动给出xy轴的刻度标度。
2、然后有时需要自己定义xy轴的刻度,这时可以用axis中的at和labels参数来更改,先令plot不要画出xy轴的标度。
3、最后,用axis函数设置xy轴的刻度,这样问题就解决了。
可以用matlab提供的坐标轴设置函数axis进行设置(对当前坐标轴进行设置),具体用法如下:plot(x, y) // 画图后用axis函数设置坐标轴的范围
axis([xmin xmax ymin ymax])% 设置坐标轴在指定的区间
xmin、xmax 表示设置横坐标的最小最大值;
ymin、ymax 表示设置纵坐标的最小最大值。
也可以用下面的set函数进行设置(对指定的坐标轴进行设置),具体用法如下:
plot(x, y) // 画图后用set函数设置坐标轴的属性
set(handles,'xtick',0:100:2500) % handles可以指定具体坐标轴的句柄
功能: 设置X轴坐标范围0到2500,显示间隔是100;
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)