论文部分内容阅读
近些年来,随着Web技术的高速发展,Web应用呈现了多样化的特点。传统的WebGIS在数据可视化方面已有深入的研究,并且广泛应用在空间数据分析和处理方面。然而,随着越来越多地图应用场景的出现,用户不仅仅满足于通过地图获取单一的地理信息,更希望地图应用能够展示更多的非地理信息。地理叙事的地图应用,是指将文本媒体的适当结构特征转移到地图应用上,使地图应用能够表达更多的非地理信息。因此,利用当前的Web技术实现以地理叙事为主的地图应用显得越来越有必要。针对上述需求,本文采用Node.js、MongoDB、Vue.js等技术,实现了一个具有多种地理叙事地图结构,提供从叙事地图的构建、浏览到叙事地图的共享等一系列的叙事地图服务的地理叙事地图应用平台,本文的主要工作如下:(1)对国内外现有的地理信息系统和叙事地图应用设计要点进行了相关研究及归纳总结。(2)建立了三种叙事地图模型:基于位置的叙事地图模型、基于主题的叙事地图模型及基于章节的叙事地图模型。针对每一种叙事模型,设计了相应的数据模型和数据组织方式。(3)针对叙事地图应用平台模型多样化、终端多端化的特点,设计了易于扩展、前后端分离的网络结构,同时将平台的实现分为客户端、应用服务器和数据存储三个方面。(4)实现了面向Web的地理叙事地图应用原型平台。网络结构前后端通信基于Ajax,并引入Token的认证思想,使用JSON Web Token实现跨域身份认证;客户端基于Vue.js框架,对于叙事所需的地理空间数据展示引入OpenLayers可视化框架进行实现;应用服务器采用面向资源的架构,设计了Restful风格API,开发和运行环境采用具有良好并发能力的Node.js,并基于Express中间件的思想实现服务器端模块化;数据存储采用操作简便、易扩展的NoSQL数据库MongoDB作为主要的存储手段。最后,基于以上的研究、设计与实现,分别对客户端和服务器端进行了功能测试,并采用自动化测试工具对平台进行了性能测试,平台实现的功能得到了验证。本文实现的地理叙事地图应用平台具有实际可用性,同时具有易于扩展、可跨平台、交互性强等多方面的优势。本文所做工作为下一步设计结构更加多样,内容更为丰富,适合商业化,可进行规模化推广的地理叙事地图应用奠定了重要的技术基础。