使用R和GBIF制作物种全球分布图的完整指南
创作时间:
作者:
@小白创作中心
使用R和GBIF制作物种全球分布图的完整指南
引用
CSDN
1.
https://blog.csdn.net/weixin_44562189/article/details/133746409
本文将介绍如何使用R语言和GBIF(全球生物多样性信息设施)数据来制作物种在全球范围内的分布图。通过本教程,读者将学习到如何获取物种分布数据、处理数据以及使用ggplot2包绘制美观的物种分布图。
一、准备工作
要获得特定物种的世界分布图,需要知道该物种的学名,以及实验室已有的采集数据(因为GBIF上的数据可能不够全面)。
二、R脚本实现
使用以下R脚本(my R with GBIF.R)来下载GBIF中的物种信息并绘制全球分布图。请确保已经安装了所需的R包。
# 此代码用于下载GBIF中物种信息以及在绘制在全球范围分布图,全球年均气温图自己后期制作
# 每次需要改开始的两个物种名,保存数据的文件名,这边更改了R中可以自动更新
setwd(dir="E:/R and GBIF/TEST3") # 设置工作目录#首先需要这个文件夹存在才能设置这个目录
# 调用R包
library(rgbif)
library(dplyr)
library(raster)
library(maptools)
library(CoordinateCleaner)
library(ggmap)
library(ggplot2)
library(maps)
key <- name_suggest(q="Umbilicaria deusta", rank='species')$data$key
key#物种识别号#不同物种需要更改这里的物种名
occ_count(taxonKey=key, georeferenced=TRUE, basisOfRecord= "PRESERVED_SPECIMEN")#GBIF中可查到的记录数
data <- occ_search(scientificName = "Umbilicaria deusta", limit= 1000, hasCoordinate = TRUE, basisOfRecord= "PRESERVED_SPECIMEN")#下载数据#不同物种需要更改这里的物种名
str(data$data)#展示数据结构
names(data$data)#检查数据的列名
head(data$data[,c("countryCode","country")])
datasel<-data$data %>%
dplyr::select(species, decimalLongitude,
decimalLatitude,country,coordinateUncertaintyInMeters) %>%
rename(Species = species, Long = decimalLongitude, Lat =
decimalLatitude, Uncertain=coordinateUncertaintyInMeters) %>%
mutate (Species = as.factor(Species), country=
as.factor(country))#生成数据框并改列名#这里有可能会报错,报XX错误就把XX删掉就行
datasel
datasel %>% filter(Long==0, Lat==0)# 统计经纬度等于零的记录,用于检查错误数据
datasel_cleanF <- datasel %>% distinct(Long, Lat,.keep_all=T)#清除重复数据
str(datasel_cleanF)
write.table(datasel_cleanF, file = "UL_distribution.xlsx",quote = F, sep = "\\t",row.names = F)#保存数据至Excel表#这个命令就会在之前设置的那个目录下生成excel表
world_map <- map_data("world") # maps包map_data()中获取世界地图数据
world_map
p1 <- ggplot()+
geom_polygon(data = world_map, aes(x = long, y = lat,group = group),
fill='white',colour="black",size=0.25)+
geom_point(data = X22species,aes(x = Long, y = Lat,fill = Species),
alpha = 0.5,shape = 21,size = 3) #这个size大小可以自己调整,合适为好
#这里的data=XX就是我们要作图的数据表
#+geom_text(data=datasel_cleanF,aes(x=Long, y=Lat, label=Species),vjust=1.5,colour="black",size=3) # 添加物种标签
#+geom_label(data = world_map,aes(x = long, y = lat, label = region),fill='orange',colour="black",size=3) # 给地图安区域添加地域标签
p1#输出图片手动下载一下把(我怕又出错)
三、运行注意事项
如果是单个物种作图,没有本地数据,直接用生成的
UL_distribution.xlsx数据打点在地图上即可,红色点。如果是多个物种作图,再结合本地数据,需要把不同物种的表汇总在一起,格式如下:
- 最后生成的图片在选择点的大小和导出图片大小时可以多尝试调整一下,调一个最合适的,后期也可以再AI调整一下坐标大小以及图例大小
热门推荐
四川资阳中学:百年名校的辉煌历程与卓越成就
梨花声音教育:初学者朗诵稿件选择指南
吃粽子可不可以喝凉水、牛奶、可乐、豆浆?
北京阳台花卉选择指南:26种常见草花植物推荐
炉石传说12月份高胜率卡组推荐-12月份上分卡组
一年涌入近3000万95后新用户,闲鱼怎么做到的?
“盲道是盲人的生命线,它不是一个装饰品……”
医学科普 | PET/CT是什么?
爱德华·霍普画中的光影与孤独:现代都市下的沉思
什么是综合评估标准?综合评估标准如何应用于实际情况?
简述重症胰腺炎的处理原则
租赁合同完全指南:期限约定、合法出具与转让流程
不能错过,宝鸡两天一夜旅游攻略→
携号转网攻略:从流程到套餐选择全解析
2024年三季度证券行业分析报告:市场波动与政策导向下的行业新动向
太行山一号公路自驾游攻略:探寻美食与美景的绝美之旅
针对社区需求的路边停车策略设计
涨价现象如何进行客观的分析理解?这种分析方式有哪些影响因素?
【小说素材】深度剖析五大神秘鬼怪,灵感爆棚!
每日认识一位艺术家--爱德华·霍普
SEO设置,在中英文网站如何设置中英文分离的标题和描述
【火影揭秘】长门为何对恩师自来也痛下杀手?深度解析!
探究114514:网络文化中的数字符号与年轻人的情感表达
战术手电的发展历程以及在现代战斗中的作用!
原来不“喘”也可能是哮喘
探的是人心,揭露的是一段辛酸历史
装饰设计师的职业前景以及职业存在的意义
张雪峰评华北电力大学:就业前景和去向
显存带宽对游戏的影响介绍
适合一个人细品的6部高分电影,堪称人生教科书