GeoServer发布数据进阶
GeoServer发布数据进阶
GeoServer介绍
GeoServer是用于共享地理空间数据的开源服务器。 它专为交互操作性而设计,使用开放标准发布来自任何主要空间数据源的数据。
GeoServer实现了行业标准的 OGC 协议,例如网络要素服务 (WFS)、网络地图服务 (WMS) 和网络覆盖服务 (WCS)。其他格式和发布选项可作为扩展模块提供,包括 Web 处理服务 (WPS) 和 Web 地图切片服务 (WMTS)。

GeoServer创建工作空间
GeoServer中的工作空间可以理解为数据分组,我们可以将不同省份的数据进行分组,这里已经创建了江苏(jiangsu)和内蒙(neimeng)两个工作空间,如图所示:

推荐数据发布命名规则如下:
栅格数据:数据行政区划+时间(年月日)
矢量数据:数据行政区划+时间+内容
数据地址中不要出现中文,可以用英文和数字。

数据坐标转换
使用GeoServer发布数据时,最好统一数据坐标系,这里我们需要统一成WGS84(4326)坐标系。使用QGIS(类似ArcMap)工具进行坐标转换。
QGIS是一个用户界面友好的桌面地理信息系统 (opens new window),可运行在Linux (opens new window)、Unix (opens new window)、Mac OSX和Windows等平台之上。QGIS是基于Qt,使用C++开发的一个用户界面友好、跨平台的开源版桌面地理信息系统。
接下来介绍如何使用QGIS进行坐标系转换。

我们加载数据到QGIS中,在图层管理中右击图层选择属性,就能看到图层的相关信息。这里我们能看到数据的坐标系和数据的字符编码。

在图层管理中右击图层选择导出-》要素另存为,就可以设置图层导出后的格式、坐标系和字符编码了。

这里如果是导出矢量就选择esri shapefile格式,坐标系选择4326-WGS84,字符编码选择UTF-8。
如果是栅格数据就选择tiff格式,坐标系选择4326-WGS84。
最后将数据上传到GIS服务器上对应的目录中。
GeoServer设置数据样式
这里主要介绍如何设置矢量数据的样式,栅格数据一般不需要设置样式。
GeoServer默认的矢量数据样式是灰黑色的,很可能不符合我们得要求,这里我们可以使用QGIS工具来设置矢量的样式,并上传到GeoServer中使用。
这里我以测试数据为例。
设置图层符号

在图层管理中右击图层选择属性-》选择符号化,

这里我们基于矢量中的DLBM字段做分类,不同类型用不同的颜色。

设置图层标注

我们还需要将图斑属性标记到图层上,这里我们使用图层标注功能,选择需要标注的属性,可以设置属性的样式、大小和颜色等。


导出sld样式文件

选择符号化-》样式-》保存图层样式-》保存为SLD格式样式文件


GeoServer新增样式文件
将导出好的样式文件上传到GeoServer中,才能让发布的图层使用,接下来介绍如何在GeoServer中发布样式文件。
登录GeoServer主页面后,选择左侧样式按钮,进入样式目录后可以新增样式。

进入新增样式页面后,我们可以手动设置样式文件,也可以上传样式文件,如图所示:

这里我们选择刚刚生成的sld文件-》点击upload按钮,sld文件会被解析到页面中,如图所示:

传完成后我们可以点击左下方的验证按钮,来确保格式是否正确,如果验证通过我们可以设置样式的名称和工作空间,最后点击保存按钮保存样式。
推荐样式的命令方式:行政区划-样式类型
到此GeoServer发布一个矢量样式就完成了。
GeoServer数据发布
做好以上准备后,接下来介绍如何使用GeoServer发布矢量数据和栅格数据。
矢量数据发布
添加存储仓库
存储仓库是将数据所在连接到GeoServer的存储库。每个存储必须在一个工作空间中, 因此在创建时就需要设置一个工作空间。
点击新建数据源按钮,这里选择矢量数据源中的shapefile文件,如图所示:


点击浏览按钮选择文件-》选择服务器上传数据的目录-》选择要发布的矢量数据,如图所示:

设置矢量文件的名称、工作空间和字符编码,点击保存按钮保存数据源,如图所示:

新增图层
设置完矢量数据源点击保存按钮后,会提醒你新建图层,如图所示:

点击发布按钮就会新建图层,如果这个时候没有发布,可以点击左侧图层按钮,在图层菜单中选择数据源再次发布,如图所示:

点击发布按钮后开始编辑图层,编辑图层名称和图层标题,如图所示:

向下滚动,设置图层坐标和图层边界范围,如图所示:

编辑好图层属性后,点击发布按钮,设置图层样式,选择之前发布的样式,如图所示:


点击保存后,图层就发布完成了。
查看图层
点击左侧图层预览按钮,我们可以查看刚刚发布的图层,如图所示:

找到我们刚刚发布的图层数据,点击openLayers按钮,就能看到刚刚发布的图层,如图所示
:
栅格数据发布
栅格数据发布流程类似矢量数据发布流程。
添加存储仓库
点击新建数据源按钮,这里选择栅格数据源中的GeoTIFF文件,如图所示:

点击浏览按钮选择文件-》选择服务器上传数据的目录-》选择要发布的栅格数据,如图所示:

设置栅格文件的名称、工作空间和字符编码,点击保存按钮保存数据源,如图所示:
新增图层
设置完栅格数据源点击保存按钮后,会提醒你新建图层,如图所示:

点击发布按钮后开始编辑图层,编辑图层名称和图层标题,如图所示:

向下滚动,设置图层坐标系和图层边界范围,如图所示:

查看图层
点击左侧图层预览按钮,我们可以查看刚刚发布的图层,如图所示:

找到我们刚刚发布的图层数据,点击openLayers按钮,就能看到刚刚发布的图层,如图所示:

GeoServer数据
GeoServer默认发布数据后,使用tms等切片协议进行访问时是动态进行数据切片的,切好片的数据就会被缓存下来。如果我们发布的矢量数据或栅格数据的数据量很大,这个时候数据时还没有完整切片的,用户访问的时候可能感觉有点慢,这个时候就可以主动进行数据切片操作对数据进行缓存,访问缓存后的数据就会快很多。
接下来介绍如何主动进行数据切片缓存操作。
点击左边的切片图层按钮,进入切片图层管理页面,如图所示:

选择我们需要进行切片的图层,如图所示:

点击图层后面的Seed/Truncate按钮,进行切片操作,如图所示:

这里说明一下,这里切片需要选择坐标系EPSG:900913,这是由于前台使用的切片坐标系是3857。
Format:默认png格式就行
Zoom stop:一般最大不超过18级
相关文章:
GeoServer发布数据进阶
GeoServer发布数据进阶 GeoServer介绍 GeoServer是用于共享地理空间数据的开源服务器。 它专为交互操作性而设计,使用开放标准发布来自任何主要空间数据源的数据。 GeoServer实现了行业标准的 OGC 协议,例如网络要素服务 (WFS)…...
Docker离线部署
Docker离线部署 目录 1、需求说明 2、下载docker安装包 3、上传docker安装包 4、解压docker安装包 5、解压的docker文件夹全部移动至/usr/bin目录 6、将docker注册为系统服务 7、重启生效 8、设置开机自启 9、查看docker版本信息 1、需求说明 大部份公司为了服务安全…...
《数据库系统概论》学习笔记——第七章 数据库设计
教材为数据库系统概论第五版(王珊) 这一章概念比较多。最重点就是7.4节。 7.1 数据库设计概述 数据库设计定义: 数据库设计是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构&#x…...
【Datawhale图机器学习】半监督节点分类:标签传播和消息传递
半监督节点分类:标签传播和消息传递 半监督节点分类问题的常见解决方法: 特征工程图嵌入表示学习标签传播图神经网络 基于“物以类聚,人以群分”的Homophily假设,讲解了Label Propagation、Relational Classificationÿ…...
【分布式缓存学习篇】Redis数据结构
一、Redis的数据结构 二、String 数据结构 2.1 字符串常用操作 //存入字符串键值对 SET key value //批量存储字符串键值对 MSET key value [key value ...] //存入一个不存在的字符串键值对 SETNX key value //获取一个字符串键值 GET ke…...
【跟着ChatGPT学深度学习】ChatGPT带我入门NLP
❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博…...
RGB888与RGB565颜色
颜色名称RGB888原色RGB565还原色英RGB888[Hex]RGB888_R[Hex]RGB888_G[Hex]RGB888_B[Hex]RGB565[Hex]RGB565_R[Hex]RGB565_G[Hex]RGB565_B[Hex]黑色Black0x0000000000000x0000000昏灰Dimgray0x6969696969690x6B4DD1AD灰色Gray0x8080808080800x8410102010暗灰Dark Gray0xA9A9A9A9…...
常见的域名后缀有哪些?不同域名后缀的含义是什么?
域名发展至今,已演变出各种各样的域名后缀,导致很多网站管理人员在注册域名时不知该如何选择。下面,中科三方针对常见域名后缀种类,以及不同域名后缀的含义做下简单介绍。 什么是域名后缀? 域名是由一串由点分隔开的…...
LevelDB架构介绍以及读、写和压缩流程
LevelDB 基本介绍 是一个key/value存储,key值根据用户指定的comparator排序。 特性 keys 和 values 是任意的字节数组。数据按 key 值排序存储。调用者可以提供一个自定义的比较函数来重写排序顺序。提供基本的 Put(key,value),Get(key),…...
华为OD机试模拟题 用 C++ 实现 - 快递货车(2023.Q1)
最近更新的博客 【华为OD机试模拟题】用 C++ 实现 - 最多获得的短信条数(2023.Q1)) 文章目录 最近更新的博客使用说明快递货车题目输入输出示例一输入输出Code使用说明 参加华为od机试,一定要注意不要完全背诵代码,需要理解之后模仿写出,通过率才会高。 华为 OD 清单…...
伺服三环控制深层原理解析
我们平时使用的工业伺服,通常是成套伺服,即驱动器和电机型号存在配对关系。 但有些时候,我们要用电机定转子和编码器制作非成套电机,这种时候,我们需要对驱动器进行各种设置才能驱动电机。 此篇文章将通过介绍伺服控制的三环控制原理入手来说明我们调试非成套伺服时需要…...
Cornerstone完整的基于 Web 的医学成像平台(一)
1.简介 Cornerstone是一个开源的基于Web的医学成像平台,它提供了一个易于使用的界面,可以用于加载、显示和处理医学图像。Cornerstone可以用于许多医学图像处理应用程序,例如计算机断层扫描(CT)、磁共振成像ÿ…...
老板让我在Linux中使用traceroute排查服务器网络问题,幸好我收藏了这篇文章!
一、前言 作为网络工程师或者运维工程师,traceroute命令不会陌生,它的作用类似于ping命令,用于诊断网络的连通性,不过traceroute命令输出的命令会比ping命令丰富的多,可以跟踪从源系统到目标系统的路径。 很多工程师…...
一文读懂【数据埋点】
数据埋点是数据采集领域(尤其是用户行为数据采集领域)的术语,指的是针对特定用户行为或事件进行捕获、处理和发送的相关技术及其实施过程。比如用户某个icon点击次数、观看某个视频的时长等等。 数据分析是我们获得需求的来源之一,…...
Qt图片定时滚动播放器+透明过渡动画
目录参考结构PicturePlay.promain.cppmyqlabel.h 自定义QLabelmyqlabel.cpp自定义QLabelpictureplay.hpictureplay.cpppictureplay.uistyle.qss效果源码参考 Qt图片浏览器 QT制作一个图片播放器 Qt中自适应的labelpixmap充满窗口后,无法缩小只能放大 Qt的动画类修改…...
手把手带你做一套毕业设计-征程开启
本文是《手把手带你做一套毕业设计》专栏的开篇,文本将会包含我们创作这个专栏的初衷,专栏的主体内容,以及我们专栏的后续规划。关于这套毕业设计的作者呢前端部分由狗哥负责,服务端部分则由天哥操刀。我们力求毕业生或者新手通过…...
万字解析 Linux 中 CPU 利用率是如何算出来的?
在线上服务器观察线上服务运行状态的时候,绝大多数人都是喜欢先用 top 命令看看当前系统的整体 cpu 利用率。例如,随手拿来的一台机器,top 命令显示的利用率信息如下 这个输出结果说简单也简单,说复杂也不是那么容易就能全部搞明白…...
芯驰(E3-gateway)开发板环境搭建
1-Windows下环境配置 可以在Windows上使用命令行或者IAR IDE编译SSDK项目。Windows编译依赖的工具已经包含在 prebuilts/windows 目录中,包括编译器、Python和命令行工具。 1.1.1 CMD SSDK集成 msys 工具,可以在Windows命令行中完成SDK的配置、编译和…...
HiveSql一天一个小技巧:如何巧用分布函数percent_rank()求去掉最大最小值的平均薪水问题
0 问题描述参考链接(3条消息) HiveSql面试题12--如何分析去掉最大最小值的平均薪水(字节跳动)_莫叫石榴姐的博客-CSDN博客文中已经给出了三种解法,这里我们借助于此题,来研究如何用percent_rank()函数求解,简化解题思路…...
【python实现华为OD机试真题】优雅子数组【2023 Q1 | 200分】
题目描述 如果一个数组Q中出现次数最多的元素出现大于等于K次,被称为k-优雅数组,k也可以被称为优雅阈值只。 例如: 数组1,2, 3, 1、2, 3, 1,它是一个3-优雅数组,因为元素1出现次数大于等于3次, 数组[1,2, 3, 1, 2]就不是一一个3-优雅数组,因为其中出现次数最多的元素是1和…...
接口测试中缓存处理策略
在接口测试中,缓存处理策略是一个关键环节,直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性,避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明: 一、缓存处理的核…...
多云管理“拦路虎”:深入解析网络互联、身份同步与成本可视化的技术复杂度
一、引言:多云环境的技术复杂性本质 企业采用多云策略已从技术选型升维至生存刚需。当业务系统分散部署在多个云平台时,基础设施的技术债呈现指数级积累。网络连接、身份认证、成本管理这三大核心挑战相互嵌套:跨云网络构建数据…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)
HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...
基于当前项目通过npm包形式暴露公共组件
1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹,并新增内容 3.创建package文件夹...
MVC 数据库
MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...
OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别
OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别 直接训练提示词嵌入向量的核心区别 您提到的代码: prompt_embedding = initial_embedding.clone().requires_grad_(True) optimizer = torch.optim.Adam([prompt_embedding...
Caliper 配置文件解析:config.yaml
Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...
python报错No module named ‘tensorflow.keras‘
是由于不同版本的tensorflow下的keras所在的路径不同,结合所安装的tensorflow的目录结构修改from语句即可。 原语句: from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后: from tensorflow.python.keras.lay…...
日常一水C
多态 言简意赅:就是一个对象面对同一事件时做出的不同反应 而之前的继承中说过,当子类和父类的函数名相同时,会隐藏父类的同名函数转而调用子类的同名函数,如果要调用父类的同名函数,那么就需要对父类进行引用&#…...
java高级——高阶函数、如何定义一个函数式接口类似stream流的filter
java高级——高阶函数、stream流 前情提要文章介绍一、函数伊始1.1 合格的函数1.2 有形的函数2. 函数对象2.1 函数对象——行为参数化2.2 函数对象——延迟执行 二、 函数编程语法1. 函数对象表现形式1.1 Lambda表达式1.2 方法引用(Math::max) 2 函数接口…...
