基本数据可视化之散点图

2019-03-10  本文已影响0人  大数据技术派

plot是R语言中最常用的绘图函数,如果是单纯作图而不是专注图是否漂亮,这个函数基本够用。如果自己还要想画出个性化图,就得通过设置这个函数的各种参数了,R语言绘图参数很复杂,这里列出说明常用的作图参数。

plot函数的默认参数

对于简单的散点图,R语言默认参数就够了,不需要自己设置参数。默认参数就是,直接给出画图变量,一些参数已经有参数值,一般为TRUE。这样就不用比如我们要画一个简单的散点图就要设置一大堆参数,还可以修改参数值。下面列出R语言plot()函数默认的一些参数,说明其功能。

这里用到数据集cars,只有两列,查看前六行:

head(cars)

speed dist

1 4 2

2 4 10

3 7 4

4 7 22

5 8 16

6 9 10

一般对于变量x、y,只需plot(x,y)即可,对于一个两列的数据框,比如cars数据集,它只有两列,只需plot(cars)即可,R就会自动以cars的第一列作为自变量、第二列作为因变量画出图。

plot(cars)

这简单的一句命令就可以画出:

殊不知,这简单的一句命令plot()函数包含了多少默认参数值,还好是默认的,否则我们的数学统计学家得有多累!还是查看文档。学习一门语言,查看官方帮助文档是最好的方法! 查看R语言帮助文档"?plot",点击"plot.default",会出现默认参数说明页面。默认参数格式是这样:

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, ...)

参数说明:

x,y:自然就是作为x,y轴的变量,长度要求一样,y可以为空,也就是只给出一个变量,这时就以1,2,3,...序列为x轴,给出的这个变量为y轴。分别就y为空和不为空做出图:

par(mfrow = c(1,2)) #画图区域分成一行两列

plot(cars[,1])

plot(cars)

type:就是画图类型,默认取值为"p"就是散点图,比如取值为"b"就有点也有线:

par(mfrow = c(1,2))

plot(cars,main = '散点图')

plot(cars,type = 'b',main = '点、线图')

xlim、ylim:指定x、y坐标轴的范围(当然了,前提是显示坐标轴),比如:

par(mfrow = c(1,2))

plot(cars,main = '未指定x范围')

plot(cars,xlim = c(0,30),main = '指定x范围')

main:是否给图形加标题,下面代码画了两幅图,一幅图有标题,一幅没有:

par(mfrow = c(1,2))

plot(cars)

plot(cars,main = '加标题')

sub:替补标题,相当于又给图形加了一个标题。

par(mfrow = c(1,2))

plot(cars,main = '标题区域')

plot(cars,main = '标题区域',sub = '我是替补标题')

ann:取值TRUE或者FALSE,默认为TRUE,决定是否标出x、y轴变量名及图形标题。

par(mfrow = c(1,2))

plot(cars,ann = FALSE,main = '测试')

plot(cars,ann = TRUE,main = '测试')

当ann取值为"FALSE"时,不显示坐标变量名,并且即使指定“main = '测试'”也不显示图形标题。

axes:取值TRUE或者FALSE,默认为TRUE,决定是否标出x、y轴。

par(mfrow = c(1,2))

plot(cars,axes = FALSE)

plot(cars)

frame.plot:取值TRUE或者FALSE,默认为TRUE,是否在图形周围画出一个方框。

par(mfrow = c(1,2))

plot(cars,frame.plot = FALSE)

plot(cars)

plot函数常用参数

pch:点的形状,一般取值1~25,取值不同,画图的点的形状就不同。默认取值为1,空心圆圈点。 

col:颜色

par(mfrow = c(1,2))

plot(cars)

plot(cars,col = 'blue')

bg:点的背景颜色,当pch=21~25时,否则即使设置了背景颜色也不管用。

par(mfrow = c(1,2))

plot(cars,bg = 'red')

plot(cars,pch = 22,bg = 'red')

cex:点的大小,取值越大,点越大

par(mfrow = c(1,2))

plot(cars,cex = 0.5)

plot(cars,cex = 1)

上一篇下一篇

猜你喜欢

热点阅读