r语言画分布图

Python099

r语言画分布图,第1张

R中的画地图的方法不外乎两种,一种是利用GIS方面的数据,在R中画出来,另一种是直接从谷歌地图等地方拿来主义。

先说第一种,最早应该是从maps包开始的,这个包里没记错的话应该用map函数为主,

>map("world", fill = TRUE, col = rainbow(200),ylim = c(-90, 90), mar = c(0, 2, 0, 0))

>title("worldmap")

这种用法大家应该很熟了,比较可惜的是里面的数据是在是太少了,连张中国地图都画不了,好在后来有了mapdata等一系列的包,CRAN上maps包后面那一串全是。

具体的内容看一下文档就ok啦,可是问题又来了,R包里的数据总是不够用的,而且还不新,这个时候就可以考虑sp包了,包里的spplot函数可以用来画地图

1.利用R包rworldmap &rworldxtra来作图。

2.已有的map数据中一个国家对应一个坐标,一个国家边界,利用这些已有数据+用户数据构建新的画图数据(其他新添加的图均是如此)。

文件逗号分隔,每列的说明:

1.ID

新的类对象属性ID,自定义,等于原来map中的11列ADMIN

2.Name

后期绘图匹配项,同ID即可,等于原来map中的19列NAME

3.LON

绘图时的经度33列LON

4.LAT

绘图时的纬度34列LAT

注意:这里的经纬度是你自己想要标记饼图的经纬度(起到随意标记点的作用)

5.国家名

和原始map文件中的第11列ADMIN ID对应,每个国家都有一个坐标多边形区域,必须把坐标点画在某个国家内

6.饼图分块-1

7.饼图分块-2

8.legend名字

这里一个饼图只分成2部分,用户可自定义添加更多

成品如下

撰文&编辑:VickieQ

校对:HCLO4 &花毛

在这里给你举一个实例,下面我要作出数据a的三个分布图

a<-rnorm(100)

#卡方分布图

b<-dchisq(a,1) #变换为卡方分布

hist(b)

#t分布图

c<-dt(a,1,0)#变换为t分布

hist(c)

#F分布图

d<-df(a,1,1,0)#变换为f分布

hist(f)