R语言作图plot函数以及参数设置解析

Python028

R语言作图plot函数以及参数设置解析,第1张

plot(x, y = NULL, type = "p", xlim = NULL, ylim = NULL, log = "", main = NULL, sub = NULL, xlab = NULL, ylab = NULL, ann = par("ann"), axes = TRUE, frame.plot = axes, panel.first = NULL, panel.last = NULL, asp = NA, xgap.axis = NA, ygap.axis = NA,   ...) x,y  用于横纵坐标作图的数据对象。 type 图类型(线条和点类型),使用格式type=" "。                                                    type="p"显示为空心点。plot                                                    type="l"显示为线条。line                                                    type="b"显示为空心点和线条。both                                                    type="c"显示为无点和线条。                                                    type="o"显示为空心点和线条,线穿过空心点。                                                    type="s"/"S"显示为阶梯线。                                                    type="h"显示为直方图样的垂直线。                                                    type="n"显示为无点和无线条。 xlim/ylim 用于指定图的x轴和y轴的范围,使用格式:xlim=c(x1,x2), ylim=c(y1,y2)。 xlab/ylab 用于给图的x轴和y轴添加标签,使用格式:xlab="xlab",ylab="ylab"。 main 用于对plot添加主标题, main="   "。 sub   用于对plot添加副标题, sub="   "。 log   用于对x或者y值取log。log="x"/"y"/"xy"。 ann  使用T/F对plot中的标题,x轴标签,y轴标签是否显示进行定义。 axes  使用T/F对坐标轴是否显示进行定义。 frame.plot  使用T/F对画图外框是否显示进行定义。 panel.first  参数还没弄懂,panel.first="grid(8,8)"对背景线进行定义。 asp  表示y/x的纵横比。 lty   用于线条类型的定义,指定值为整数,lty="1"。                                                    lty="0"显示为空白,即无线条。                                                    lty="1"显示为实线线条。                                                    lty="2"显示为虚线线条。                                                    lty="3"显示为点状线条。                                                    lty="4"显示为点虚线线条,点和虚线线条间隔。                                                    lty="5"显示为长虚线。                                                    lty="1"显示为双破折号线条。

q1, 首先要确定是barplot还是hist,如果是barplot的话,应该不存在breaks的问题,因为barplot的传入参数是个矩阵;

我假设你要画的是个hist,我偶遇过这个问题,我的理解是hist的breaks的值要能被范围整除才行;比如x=1:200,break=7的话,就只能画出4个柱来,但如果breaks=10就没问题;基本上是这样的,偶尔也有例外;比如break=5就不行....奇怪得很

最后,没办法的办法,就只能用barplot代替hist了,barplot肯定不会有这个问题,统计下hist参数中的分布情况,转换成矩阵,用barplot吧;

q2, 貌似一般都用一组因素把这些类别区分开,我用abcde,表示你的小学,中学...了,比如这样:

a=1:7b=8:10c=c(9,10,11)d=c(40,55)e=100:110f=factor(c(rep(1,sum(length(a),length(b),length(c))),rep(2,sum(length(d),length(e)))))#先用c()生成数组,在转换成factor,其实数组也ok的,不过plot()中两个数组和factor不一样 x=c(a,b,c,d,e)plot(x~f)q3, 就我所知不行;yes或no一定也要是能映射到x,y范围内的点才行;你是想表示分类结果吗?如果是的话,通常用颜色,或者在点旁边的text表示。

q4, 举个例子吧

x=-50:50y=x^2+x+1z=10*abs(x)+1 plot(x,y,type='l')lines(x,z,lty=3)legend(c('type1','type2'), x=-20,y=2500, col=c('black','red'), lty=c(1,3))legend的x和y是legend的左上角,匿名参数是类型名称,col,lty,pch 是对应的颜色,线类型,和点类型。

最后,我现在多用ggplot2,如果不抵触的话可以看看,和R的基础作图包思路不是很一样,但是图很清新的;

如果还有问题,建议把数据集data.frame粘贴几行上来,我也试试;

R语言绘图系列:

⚠️在不确定将图例添加在什么位置时,可使用 locator函数

locator()函数可以定位图上的点。运行locator函数之后在图上随便点一个点,点击finish就会返回刚刚那个点的位置坐标。

使用text函数在每个条图下面添加标签

设置气泡透明度

⚠️调色板函数中有个参数叫alpha,也可以设置气泡的透明度。(在ggplot2中很容易实现)

关于layout函数: