同济大学 OceanTracer小组
本项目旨在为专业科研员提供海洋物理参数(目前主要是海表温度)的可视化以初步数据处理,同时能够向大众科普海洋效应(目前主要是厄尔尼诺效应),在数据直观展示和趣味答题闯关的功能下,增进大众对海洋效应的认识.
- 开发采用C/S模式,使用了MongoDB与Sql Server两种数据库
- 使用C#.NET制作系统的操作界面
- 调用了百度地图JavaScript API对查询所需的经纬度信息进行可视化获取
- 调用了Matlab动态链接库对数据进行处理以及可视化
- 采用了Cef Sharp谷歌浏览器,以支持HTML5的显示
- 采用了Python爬虫技术爬取Nino区Nino指数数据
- 开发过程中使用了Github团队项目,提高效率
- MongoDB与SQL Server结合:依据数据特点的不同采用MongoDB和Sql Server两种数据库
- 海洋参数数据数据量大、且数据间关联性弱,采用Nosql的MongoDB进行存储;
- 用户和科普数据数据量相对较小,且数据间有很强的关联性,采用Sql Server存储
- 专业程度高:我们调用了Matlab对数据进行数据处理以及可视化,符合专业实际需要,包括:
- NetCDF格式文件的处理
- 时间序列的分析预测、频谱图绘制
- 经纬剖面的时间连续性绘制等
- 面向群体广泛:项目不仅为专业研究人员提供了海洋参数的数据处理及可视化,并且向大众提供了海温与厄尔尼诺效应的科普,以图文和数据作支撑,使得科普更加直观,改变厄尔尼诺效应在公众中“只知其名”的现状
- 查询直观便捷:采用手动输入和百度地图Java Script API 方法进行查询经纬度信息的确定,用户可以在地图上直接进行经纬度点选或经纬度范围框选
- 数据可视化丰富:调用Matlab进行数据的可视化,包括折线图、频谱图、热力图等图件,不仅形式丰富,也满足了专业要求
- 用户友好性:用户可以查看科普学习知识,也可以通过闯关答题对已学知识进行检验巩固。同时为用户提供社区交流,如若有任何问题,都可在社区中发帖询问,等待其他用户和管理员的回答
- 管理员友好性:提供了多种数据处理方式,管理员可以对数据进行单一、批量的处理,根据需求对处理方式进行选择。对于每月更新的Nino数据可以通过Python进行数据获取与更新
- Windows 10
- Visual Studio 2019
- MATLAB 2019a 、 MATLAB 2018a
- Python 3.7
- SQL Server 2012