谁没有遇过臭虫?可能更好的问题不是是否,而是何时。我清楚地记得我第一次遇见臭虫的经历——一部分原因是因为它们那刺鼻的像芫荽叶的味道,也是因为在我家乡的卡特兰语言中,它们被叫做Bernat pudent (“臭博纳特”),而博纳特正是我双胞胎兄弟的名字。
所以当我在 Wolfram 科技大会访问伊利诺伊香槟市又遇到了臭虫的时候,很多童年的记忆又重现脑海。但是这一次,两件事情有所改变:遇见臭虫的频率好像呈指数增长,而且现在我有了Wolfram语言,我可以更加全面地(以计算的方式)来满足我对这些遭人唾弃的昆虫的好奇心和这些昆虫的增长对生态系统的影响的研究。所以为了对这种入侵昆虫在全美的出现和扩张有更好的了解,我使用了已有的观察数据,并用Wolfram语言制作了一张横跨过去20年数据的地图。
导入分布数据
在美国,有很多种本地的臭虫品种,但是在这篇文章中,我会着重一个在过去20年人们不太熟悉但现在在北美很常见的非本地品种:茶翅蝽,学名叫做Halyomorpha halys (Stål, 1855)。为了拿到一个尽可能全面的数据,我们会从三个数据源导入臭虫的数据。然后把数据文件保存在我们的笔记本所在的文件夹,这样我们就可以很好地设置目录路径:
我们导入从EPPO(欧洲和地中海植物保护组织)的全球数据库中获取的臭虫分布数据。使用SemanticImport,我们可以指定对想要的数据列做诠释,并获取一个Dataset对象。在这个例子中,Interpreter[“Country”]作为纯函数运行:
我们可以用Select快速看一下全球各个国家的数据(由带有空白“state”属性的项表示):
这个数据把每一个发现划归为六个不同的状态水平之一——可能存在或者不存在,和对应的报告数量/密度:
我们可以使用GroupBy来按状态查找国家:
使用GeoRegionValuePlot,我们就可以根据EPPO数据,创建一个每个国家的臭虫分布和出现水平的地图:
现在我们从iNaturalist和EDDMapS(早期探测和分布地图系统)导入数据,这两个数据源都包含众包观察数据。我们会再次用到SemanticImport。由于地址是由经纬度列出来的,所以不需要自定义说明:
iNaturalist数据包括了对很多臭虫种类的观察;在这个研究中,我们只需要入侵臭虫的观察数据,茶翅蝽(Halyomorpha halys):
有了我们导入的数据,我们现在可以创建一张分布地图了。
绘制入侵过程
这个可视化图的主要目的是为了研究随着时间的变化臭虫地理分布的变化。我想把最早图形表示定为一个交互的颜色编码地图,显示数年间的汇编数据。首先我们先给从1998年开始的每个年份分配一个颜色,这也是这种臭虫最开始被发现的年份:
然后我们要提取坐标。因为不同的数据组有不同的形式,为了从每一个数据组选择观察数据,我们需要不同的函数。对于EDDMapS,我们按照观察日期进行分组,并从每个数据点提取经度和纬度数据:
对于iNaturalist数据组而言,过程也是一样的,只是名称不同:
我们可以使用Merge和DeleteMissing来组合和清理列表:
然后我们可以使用GeoPosition创建一个测地位置的数组:
下例就是我们动画的一个典型背景,使用GeoListPlot为每个州展示一个卫星图像的多边形:
我们也想在最终的GIF动图上加入臭虫的缩略图。下面的臭虫样品就曾尝试在我巴塞罗那的公寓里过冬(我们在欧洲也有同样的入侵臭虫品种):
最后我们可以结合这些缩略图,自定义颜色函数和之前在GeoListPlot中每年位置分布函数(连同其他在图像化代码中的格式调整)来展示自2001年起每年的观察数据,使用Show可以把数据叠加在背景上:
从得到的地图可以看出到给定年份的数据点累计,而且有一个注明年份的标签:
既然我们能生成每年的分布图,要把它们整合进一个动图GIF也很容易。基本上我们对每年的地图生成一个ParallelTable,然后以动画的形式导出(重复最后一帧可以拉长观看时间):
得到的结果被整合进来一个动图里,我们可以很清楚的看到随着时间的推移臭虫被发现的地区逐年增加。在过去的20年里,臭虫数量的增长似乎无可遏制——原因可能是因为不存在比如武士黄蜂这样的自然天敌,在他们原始居住地东亚臭虫的数量就是这样被控制住的。感谢像iNaturalist这样平台上民间高手的贡献,我们才得以使用这些数据并更精准的绘制地图。
当我把我的动图发布到Reddit时,仿佛触动到了某根神经,超过41,000名用户与我的这篇博文互动。再说回我的双胞胎兄弟Bernat:他把这个GIF发给他当时的居住地——罗德岛普罗维登斯——的一些朋友看,其中的两位朋友告诉他,他们已经在Reddit的首页上看过这个动图了(这展示了另一种”入侵”分布——互联网病毒式传播!)。
不平衡权重
这个分布的图为大家的经验提供了一个简洁明了的综合确认:在过去的二十年间这种入侵的棕色臭虫已经变成了大家普遍遇到的麻烦。但更重要的是,在那些国家主要粮食生产地的粮仓大州(比如伊利诺伊州),臭虫已经变成了一个严重的威胁。而西岸,地理上而言是这些臭虫原始到达地点的反方向,臭虫的问题也在逐渐往严重的方向演变。甚至加州——那里的果园和庄稼都已经受到火灾和干旱的威胁——也并不安全。西岸臭虫到来的独立事件(已由基因测试证实)在分布地图数据中清楚地展现出来。
当我们自己遇到臭虫的时候,成千上万只、五只、甚至一只就能把我们扰乱到心烦意乱,但是看一看这20年来全国性的从未减少的入侵生物物种,我们就可以看到生物多样性上的不平衡。我鼓励大家都去注册一些像iNaturalist这样的众包网站,也成为民间高手,并以自己观察到的数据向科学做出贡献。当更多的人参与到观察活动时,我们也许就能阻止一次历时30年的臭虫入侵回溯。
加入我们吧——通过由我发起的Wolfram社区线程(https://community.wolfram.com/groups/-/m/t/1834628)分享您对臭虫观察的计算研究,或者可以来看一看我关于生物多样性的其他博文(https://community.wolfram.com/web/jofreep)。每一个数据点都很重要。
更多资料
“Brown Marmorated Stink Bug.” National Invasive Species Information Center, USDA. www.invasivespeciesinfo.gov/profile/brown-marmorated-stink-bug.
Rice, K. B., C. J. Bergh, E. J. Bergmann, et al. “Biology, Ecology, and Management of Brown Marmorated Stink Bug (Hemiptera: Pentatomidae).” Journal of Integrated Pest Management 5.3 (2014): A1–A13.
使用Wolfram Mathematica 试用版可以体验全部的Wolfram语言功能哦:https://www.wolfram.com/mathematica/trial/ |
---|