2022(二等奖)C2594江淮分水岭植被碳汇时空可视化系统

news2024/9/27 12:12:35

作品介绍

一、需求分析

1.1 设计背景

气候变化是全球性问题,随着二氧化碳排放的增加生物的生存与生命受到威胁。人类活动对自然界生态系统的破坏,不仅降低了地球生物圈的生产力,威胁到人类社会未来经济的发展,同时还破坏了陆地与大气之间的自然平衡。因此,在国际地圈-生物圈计划 的核心研究计划“全球变化与陆地生态系统”中,碳循环研究被确定为核心内容之一。进入21世纪,三大国际组织IGBP、IHDP、WCRP提出了一个碳集成研究计划,其重点是回答目前全球碳源、碳汇的时空格局及成因,未来碳循环动态的控制与反馈机制(人为的和自然的),未来全球碳循环的可能动态等科学问题。针对这些科学问题,一些国家先后启动了碳循环科学研究计划。中国国家自然科学基金委员会于1993年12月正式立项“中国陆地生态系统对全球变化的反应模式研究”,其目的同样是从区域和国家尺度回答与中国碳循环相关的科学问题。与此相关,也掀起了碳汇的热潮。

随着碳汇研究的热潮,科学家们研究出了不少计算碳汇的模型,但是如何展示并与现实世界联系起来,为地区固碳能力及碳汇的科学演变和监控提供技术参考是一个需要考虑的问题。本系统就由此入手,以模型计算的20年NEP据为基础,设计了数据展示、分析、管理等多方面功能。

1.2 系统概述

基于上述背景,本系统在现有的植被碳汇能力计算模型基础上,分析适用于研究区域的碳汇计算最优模型,以近20年研究区遥感数据为基础,构建近20年植被碳汇数据图谱模型,得到近20年植被碳汇时空信息。在Web系统部分,考虑到多方面展示地区碳汇数据及时空演变情况。本系统设计了地图展示、数据分析、信息展示、数据管理四模块内容,地图展示模块从主体上直观展示近20年NEP计算结果,同时叠加地区土地覆盖类型数据;数据分析模块以多维度展示江淮分水岭地区碳汇动态演变情况;信息展示模块展示系统关键信息;数据管理模块管理20年各地区碳汇数据情况。

二、系统设计

2.1 系统功能设计

图1.功能设计图

2.2数据库设计

空间数据储存在Porta for ArcGIS与ArcGIS Server联合托管的企业级地理数据库中,非空间数据储存在非关系型数据库—MySQL。这样将数据分类存储,有效地保证了数据的时效性及用户访问快捷性,同时方便了对各类数据进行操作、管理、分析以及更新。 

2.2.1地理数据库

企业级地理数据库是数据库管理系统中的表、视图和存储过程的集合。该系统选择在Microsoft SQL Server中存储地理数据库,并将非地理数据库数据和地理数据库数据一同存储。在数据库中创建地理数据库时,建数据库、SDE 用户(具有所需权限)和 SDE方案,然后由SDE用户使用启用企业级地理数据库地理处理工具创建地理数据库。

2.2.2MySQL数据库 

MySQL拥有运行速度快、使用成本低、容易操作、可移植性强,使用用户多等优点,更加方便处理和使用数据。同时使用node.js + express + axios的方式连接MySQL数据库,对MySQL中的数据进行增加和删减。数据库中部分数据的属性结构如表1、表2所示:

表1 近五年各区域植被净初级生成力标准差属性结构

字段名

字段类型

属性说明

YEAR

INT

年份

MingG

DOUBLE

明光市植被净初级生成力标准差值

FengY

DOUBLE

凤阳县植被净初级生成力标准差值

TianC

DOUBLE

天长市植被净初级生成力标准差值

HuaiN

DOUBLE

淮南市植被净初级生成力标准差值

LaiA

DOUBLE

来安县植被净初级生成力标准差值

DingY

DOUBLE

定远县植被净初级生成力标准差值

Shou

DOUBLE

寿县植被净初级生成力标准差值

ChangF

DOUBLE

长丰县植被净初级生成力标准差值

HuoQ

DOUBLE

霍邱县植被净初级生成力标准差值

ChuZ

DOUBLE

滁州市植被净初级生成力标准差值

FeiD

DOUBLE

肥东县植被净初级生成力标准差值

QuanJ

DOUBLE

全椒县植被净初级生成力标准差值

FeiX

DOUBLE

肥西县植被净初级生成力标准差值

HeF

DOUBLE

合肥市植被净初级生成力标准差值

LuA

DOUBLE

六安市植被净初级生成力标准差值

表2 近五年各区域植被净初级生成力标准差属性结构

字段名

字段类型

属性说明

Id

INT

用户编号

Name

VARCHAR

用户名

E-mail

VARCHAR

用户邮箱

Date

DATE

用户年龄

Password

VARCHAR

登录密码

三、关键技术

图2.系统架构图

四、功能实现

该系统主要分为地图展示,数据分析,信息介绍,数据管理四个主要模块。地图展示模块主要以地图可视化与数据分析的方式,针对2001~2021年江淮分水岭15县级区域生动展示每年植被碳汇数据;数据分析主要依托动态图表等对这20年研究区的植被碳汇数据总体进行分析,变化展示等;信息介绍主要包括对研究背景,研究区,数据来源以及模型公式等进行介绍;数据管理主要用于对新年份数据导入以及对错误信息的删除等。

1. 地图展示:

(1)江淮分水岭植被净初级生产力数据可视化: 可选择或输入查询需要查看得某年植被净初级生产力,底图上会出现该年各地NEP数据图层,并在右侧的展示框上出现该年各区域NEP总数据基本统计情况。

图3. 植被净初级生产力数据可视化模块

(2)信息介绍:可添加并叠加图层,向用户展示研究区域基本信息,同时可以点击按钮同时查看土地覆盖类型与植被净初级生产力,便于用户分析对比;

图4. 研究区域信息展示模块

(3)3D分析模块:3D展示各年各区域NEP数据统计量。用户可通过右侧时间轴,点击查看不同时间各区域年NEP数据情况;

图5. 3D分析模块

2. 数据分析:

分别以柱状图和地图的形式,动态显示2001~2021年江淮分水岭各区域NPP年数据情况和2001~2018年江淮分水岭各区域NEP年数据情况;以表格的形式统计各指标达到的区域个数,以扇形图的形式展示各区域面积占比,以柱状图的形式统计各区域近五年NPP数值较平均值的增长情况;  

图6. 数据分析NPP模块

图7. 数据分析NEP模块

3. 信息介绍:

以文字加图片的形式对研究区,背景以及运用计算公式模型进行介绍,同时以文字加视频的形式对数据处理方法进行基本的介绍;

图8. 数据分析模块

4. 数据管理:

增加新年份的碳汇数据或删除错误数据,同时支持切换查看不同信息和下载信息表等功能。

图9. 数据管理模块

五、关键亮点

1.数据来源:碳汇展示数据均为真实数据代入模型进行计算得来,数据真实可靠;

2.数据处理模型选择:通过比较各碳汇计算模型,选择了应用较为广泛的CASA模型进行研究区的碳汇计算,模型应用合适且具有较高可信度;

3.生态可视化: 系统使用了Vue.JS作为系统主要开发框架,而非使用原生JS进行开发,这使得系统的开发重心凝聚在功能的设计上,方便兼容ArcGIS API for JS、ECharts等多种前端库或与既有系统进行整合,为本系统的开发提供了保证,同时也实现了多维度展示信息的需求。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/399479.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

WireShark如何抓包,各种协议(HTTP、ARP、ICMP)的过滤或分析,用WireShark实现TCP三次握手和四次挥手

WireShark一、开启WireShark的大门二、如何抓包 搜索关键字2.1 协议过滤2.2 IP过滤2.3 过滤端口2.4 过滤MAC地址2.5 过滤包长度2.6 HTTP模式过滤三、ARP协议分析四、WireShark之ICMP协议五、TCP三次握手与四次挥手5.1 TCP三次握手实验5.2 可视化看TCP三次握手5.3 TCP四次挥手5.…

【大数据处理与可视化】一 、大数据分析环境搭建(安装 Anaconda 3 开发环境)

【大数据处理与可视化】一 、大数据分析环境搭建(安装 Anaconda 3 开发环境)实验目的实验内容实验步骤一、下载Anaconda安装包二、安装Anaconda3三、验证Anaconda是否安装成功四、Jupyter Notebook的使用1. 启动Anaconda自带的Jupyter Notebook2. 在code…

Volatile关键字

Volatile关键字和JMM内存模型一JUC并发包API 包介绍二JMM(Java Memory Model)三 volatile关键字3.1.可⻅性3.1.1.问题演示3.1.1.1案例代码3.1.1.2.案例分析3.1.2.volatile 保证可见性演示3.1.2.1对number添加了volatile修饰3.1.2.2运⾏结果是&#xff1a…

Docker学习(二十一)构建 java 项目基础镜像

目录1.下载 JDK 包2.编写 Dockerfile3.构建镜像4.创建容器测试1.下载 JDK 包 JDK各版本官网下载地址: https://www.oracle.com/java/technologies/downloads/archive/#JavaSE 这里我们以 JDK 8u351 为例,点击 Java SE (8U211 and later)。 点击下载 jd…

Mysql问题:[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause

1 问题描述 使用Navicat连接到MySQL(版本:8.0.18),执行查询: select * from t_user WHERE user_name admin查询结果没有问题,但是报错: [Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY claus…

分布式 微服务

微服务学习 soa和微服务 业务系统实施服务化改造之后,原本共享的业务被拆分形成可复用的服务,可以在最大程度上避免共享业务的重复建设、资源连接瓶颈等问题。那么被拆分出来的服务是否也需要以业务功能为维度来进行拆分和独立部署,以降低业…

学习streamlit-4

st.slider 今天学习st.slider滑块组件的使用。 st.slider滑块组件通常被用来作为应用的输入,支持整数、浮点数、日期、时间和日期时间。 下面的示例程序包含以下简单功能,以演示st.slider滑块组件: 用户通过调整滑块选择值应用打印出所选…

C++面向对象编程之五:友元(friend)

C中,允许一个类的非共有成员被这个类授予友元(friend)关系的全局函数,另一个类,或另一个类中的成员函数访问。友元不是一个类中的成员,所以它们不受声明出现部分的访问权限(public,p…

Binder通信原理与弊端解析

Binder 定义 简单来说,Binder 就是用来Client 端和 Server 端通信的。并且 Client 端和 Server 端 可以在一个进程也可以不在同一个进程,Client 可以向 Server 端发起远程调用,也可以向Server传输数据(当作函数参数来传&#xff…

USART_GetITStatus与 USART_GetFlagStatus的区别

文章目录共同点不同点USART_GetITStatus函数详解USART_GetFlagStatus函数共同点 都能访问串口的SR寄存器 不同点 USART_GetFlagStatus(USART_TypeDef USARTx, uint16_t USART_FLAG):* 该函数只判断标志位(访问串口的SR寄存器)。在没有使能…

TwinCAT3中ModbusTCP Server和C# Client连接

目录 一、硬件环境 1、设置PLC的ip地址 2、ModbusTCP软件安装 3、PLC操作系统防火墙设置 4、网络助手连接PLC 二、创建PLC工程 1、创建寄存器读写变量 2、添加ModbusTCP授权 3、激活和运行工程 三、ModbusTCP数据协议说明 1、写单个寄存器 2、读寄存器 (1&…

反转链表相关的练习(下)

目录 一、回文链表 二、 重排链表 三、旋转链表 一、回文链表 给你一个单链表的头节点 head ,请你判断该链表是否为回文链表。如果是,返回 true ;否则,返回 false 。 示例 1: 输入:head [1,2,2,1] 输…

安装mayavi的成功步骤

这篇文章是python 3.6版本,windows系统下的安装,其他python版本应该也可以,下载对应的包即可。 一定不要直接pip install mayavi,这个玩意儿对vtk的版本有要求。 下载whl包 搞了很久不行,咱也别费那个劲了&#xff0…

【2023】某python语言程序设计跟学第三周内容

目录1.数字类型与操作:整数:浮点数:复数数值运算操作符数字之间关系数值运算函数2.案例:天天向上的力量第一问:1‰的力量第二问:5‰和1%的力量第三问:工作日的力量第四问:工作日的努…

Dynamics365 本地部署整体界面

昨天已经登陆上去了然后今天开机突然又登陆不上去了 具体原因也不知道 然后我把注册插件删除又重新下载结果还是登陆不上去于是返回之前的断点就可以登陆上去了重复昨天的操作这里就不截图了6、注册新步骤右键单击(插件)BasicPlugin.FollowUpPlugin&…

MySQL 主备一致

MySQL 主备一致主备切换binlog 格式statementrowmixed生产格式循环复制问题主备切换 MySQL 主备切换流程 : 状态 1 : 客户端的读写都直接访问节点 A,而节点 B 是 A 的备库,只将 A 的更新都同步过来 , 并本地执行。来保持节点 B 和 A 的数据是相同当切换…

Python蓝桥杯训练:基本数据结构 [二叉树] 中

Python蓝桥杯训练:基本数据结构 [二叉树] 中 文章目录Python蓝桥杯训练:基本数据结构 [二叉树] 中一、[翻转二叉树](https://leetcode.cn/problems/invert-binary-tree/)二、[对称二叉树](https://leetcode.cn/problems/symmetric-tree/)三、[二叉树的最…

Vue3这样子写页面更快更高效

在开发管理后台过程中,一定会遇到不少了增删改查页面,而这些页面的逻辑大多都是相同的,如获取列表数据,分页,筛选功能这些基本功能。而不同的是呈现出来的数据项。还有一些操作按钮。 对于刚开始只有 1,2 个页面的时候大多数开发者可能会直接将之前的页面代码再拷贝多…

工作记录:调研monorepo和微前端

2023年1月。因工作项目需要,调研 monorepo 、微前端等技术。 任务 一直在做的 BI 项目,随着需求迭代,模块越来越多,项目越来越复杂、臃肿。 最近,前一阶段的开发工作基本结束。新模块还在设计阶段。借此契机&#xf…

进阶C语言——数据的存储【详解】

文章目录1. 数据类型介绍1.1 类型的基本归类2. 整形在内存中的存储2.1 原码、反码、补码2.2 大小端介绍2.3 练习3. 浮点型在内存中的存储3.1 一个例子3.2 浮点数存储的规则1. 数据类型介绍 前面我们已经学习了基本的内置类型: char //字符数据类型 short //短整型 …