# 专题服务
# 配置规范
// 这个文件描述专题服务微件配置信息
{
// 基础配置
"baseConfig": {
// IP地址
"baseIp": "develop.smaryun.com",
// Port端口
"basePort": "6163",
// 图层是否叠加
"isOverlay": true,
// 图层是否定位
"isLocation": true,
// 初始 index 级别
"startZindex": 100
},
// 专题配置,数组结构,子元素表示一大类专题
"subjectConfig": [
{
// 该类专题id
"id": "115dc807-63d6-91e4-93a9-31cadb98af60",
// 该类专题名称
"title": "社会经济服务",
// 该类专题可见性
"visible": true,
// 节点类型,详见下方“支持的节点类型”(该类专题类型不可修改,因为通常以面板形式呈现,所以命名为 panel)
"nodeType": "panel",
// 一类专题可以包含多个专题列表或多个专题,数组结构
"children": [
// 下面表示一个专题集合
{
// 该专题集合id
"id": "92fd7586-e248-c105-918d-843fb090e24a",
// 该专题集合名称
"title": "人口",
// 该专题集合可见性
"visible": true,
// 节点类型,详见下方“支持的节点类型”(list 表示这是一个专题列表)
"nodeType": "list",
// 专题列表,数组结构,专题列表可以继续包含多个专题列表或多个专题
"children": [
{
// 专题id
"id": "7e1e283f-3dc8-d53d-cdd9-9633e4c612ca",
// 专题名称
"title": "人口",
// 专题可见性
"visible": true,
// 节点类型,详见下方“支持的节点类型”(subject 表示这是一个专题)
"nodeType": "subject",
// 专题类型(SubSectionMap:分段专题图;BaseMapWithGraph:统计专题图;Label:聚合标注专题图;StatisticLabel:等级符号专题图;HeatMap:热力图;HexBin:蜂窝图)
"type": "SubSectionMap",
// 专题配置,数组类型,详见下面各专题配置规范
"config": [
{
// ☆下面为各专题图配置的公共配置部分
// 年度, string 类型
"time": "2013",
// ip(可选,如果不设,则使用baseConfig中的baseIp)
"ip": "develop.smaryun.com",
// port(可选,如果不设,则使用baseConfig中的basePort)
"port": "6163",
// 该层级的最小显示级数
"minZoom": 1,
// 该层级的最大显示级数
"maxZoom": 10,
// 矢量图层地址,该项和下面<docName、layerName、layerIndex>只能选择一种填写
"gdbp": "gdbp://MapGISLocal/专题图数据/sfcls/省级行政区x",
// 地图文档服务名,该项和上面<gdbp>只能选择一种填写
"docName": "",
// 文档地图图层名,该项和上面<gdbp>只能选择一种填写,且layerName、layerIndex二选一即可
"layerName": "",
// 文档地图图层层级,该项和上面<gdbp>只能选择一种填写,且layerName、layerIndex二选一即可
"layerIndex": "",
// 前端要素查询个数(查询记录过大会造成前端显示过慢)
"queryFeatureNum": "10000+",
// 分段字段
"field": "人口数",
// 表格数据设置
"table": {
// 显示字段
"showFields": [
"权属名称",
"权属代码",
"总人口万人",
"省名",
"分类索引",
"周长",
"面积",
"人口数"
],
// 重设字段对应的别名,用来显示在图表上,如果没有设置,则采用字段本身默认的别名
"showFieldsTitle": {
"权属名称": "权属名称1"
}
},
// 统计图设置
"graph": {
// 分类字段
"field": "省名",
// 显示颜色
"fieldColors": [
"rgb(29, 137, 243)"
],
// 统计字段
"showFields": ["人口数"],
// 重设字段对应的别名,用来显示在图表上,如果没有设置,则采用字段本身默认的别名
"showFieldsTitle": {
"人口数": "人口数1"
}
},
// 弹出框数据设置
"popup": {
// 弹框标题字段
"title": "省名",
// 属性字段列表
"showFields": ["面积", "周长", "省名", "人口数"],
// 重设字段对应的别名,用来显示在图表上,如果没有设置,则采用字段本身默认的别名
"showFieldsTitle": {}
},
// ☆专题图的样式配置各不相同(大多数是themeStyle,只有统计专题图是graphType),下面分开说明
"themeStyle": {
// ...单个专题图样式相关配置
}
},
// ...
]
}
]
}
]
}
]
}
# 分段专题图(SubSectionMap)配置规范
// 这个文件描述分段专题图配置信息
{
// ... // 其他同上方公共配置
// 样式配置
"themeStyle": {
"isHoverAble": false, // 是否开启高亮
"isPopUpAble": false, // 是否有开启弹窗
"opacity": 100, // 图层透明度0-100
"visible": true, // 专题图是否显示或隐藏
"highlightStyle": {
// 高亮样式
"fillStyle": "fillStyle", // 填充区域样式
"lineStyle": "lineStyle", // 外边线样式
},
"style": {
// 专题图样式
// 点样式---------
"radius": "", // 半径,仅点、符号有用
"outline": true, // 是否有外边线,仅点、多边形有用
"outlineColor": "", // 外边线颜色
"outlineWidth": "", // 外边线宽度
"anchor": "", // 锚点,方向Top、...8个方向
// 线样式-------
"width": "", // 线宽度
"dashArray": "", // 线样式,仅线有用
"cap": "", // 线头样式
"join": "", // 拐角样式
"hasShadow": false, // 是否启用阴影
"shadowBlur": "", // 阴影模糊度
"shadowColor": "", // 阴影颜色
"shadowOffsetX": "", // 阴影X轴偏移
"shadowOffsetY": "", // 阴影Y周偏印
// 标签样式----------
"fontFamily": "", // 字体
"fontColor": "", // 字体颜色
"fontSize": "", // 字体大小
"spacing": "", // 文字间距
"rotate": "", // 文字旋转角度
"xOffset": "", // 文字X轴偏移
"yOffset": "", // 文字Y轴偏移
"lineHeight": "", // 行高
"maxWidth": "", // 行宽
"align": "", // 对齐方式
"halo": "", // 描边
"placement": "", // 是否沿着边线显示,
// 填充符号样式------
"symbol": "", // 符号Url或者名称(本地自带图片)
"rotate": "", // 旋转角度
"size": "", // 符号大小
"xOffset": "", // 符号X轴偏移
"yOffset": "", // 符号Y轴偏移
"anchor": "", // 锚点,方向Top,。。8个方向
// 填充几何样式---------
"hasOutline": true, // 是否有外边线,仅点、多边形有用
"outlineColor": "", // 外边线颜色
"outlineWidth": "", // 外边线宽度
"outlineDashArray": "", // 线样式,仅线有用
"hasShadow": false, // 是否启用阴影
"shadowBlur": "", // 阴影模糊度
"shadowColor": "", // 阴影颜色
"shadowOffsetX": "", // 阴影X轴偏移
"shadowOffsetY": "", // 阴影Y周偏印
"symbol": "symbolStyle",
"outlineSymbol": "symbolStyle",
},
"styleGroups": [ // 有对应UI
// field字段所对应的专题图分段值样式设置,默认用style
{
"start": 0, // 起始值
"end": 30, // 结束值
"style": {
// 分段样式
"color": "#FF0000", // 设定填充颜色
},
},
],
}
}
# 统计专题图(BaseMapWithGraph)配置规范
// 这个文件描述统计专题图配置信息
{
// ... // 其他同上方公共配置
// 统计图类型(pie:饼状图、bar:柱状图、...更多类型详见下方“统计专题图类型”)
"graphType": "pie",
}
# 聚合标注专题图(Label)配置规范
// 这个文件描述聚合标注专题图配置信息
{
// ... // 其他同上方公共配置
// 样式配置
"themeStyle": {
// 非聚合点的半径 50 / 3 / 2
"size": 50,
// 聚合点最小半径
"minSize": 8, // 有对应UI
// 聚合点最大半径
"maxSize": 31, // 有对应UI
// 透明度
"globalAlpha": 0.8, // 有对应UI
// 聚合像素半径
"clusterRadius": 150, // 有对应UI
// 最大聚合的级别
"maxClusterZoom": 18, // 有对应UI
// 最大显示级别
"maxZoom": 19,
// 最少聚合点数,点数多于此值才会被聚合
"minPoints": 5, // 有对应UI
// 聚合的细腻程度,越高聚合后点越密集
"extent": 400, // 有对应UI
"label": { // 聚合文本样式
// 是否显示
"show": true,
"fillStyle": "white",
},
// 聚合图标渐变色
"gradient": { // 有对应UI
"0": "blue",
"0.5": "yellow",
"1.0": "rgb(255,0,0)",
},
}
}
# 等级符号专题图(StatisticLabel)配置规范
// 这个文件描述等级符号专题图配置信息
{
// ... // 其他同上方公共配置
// 样式配置
"themeStyle": {
"isHoverAble": false, // 是否开启高亮
"isPopUpAble": false, // 是否有开启弹窗
"opacity": 100, // 图层透明度0-100
"visible": true, // 专题图是否显示或隐藏
"highlightStyle": {
// 高亮样式
"fillStyle": "fillStyle", // 填充区域样式
"lineStyle": "lineStyle", // 外边线样式
},
"style": {
// 专题图样式
"idShowFont": false, // 是否启用文字标签
"fontFamily": "", // 字体
"fontColor": "", // 字体颜色
"fontSize": "", // 字体大小
"fontSpacing": "", // 文字间距
"fontXOffset": "", // 文字X轴偏移
"fontYOffset": "", // 文字Y轴偏移
"isShowSymbol": false, // 是否启用图标或填充图案
"symbol": "", // 符号Url或者名称
"symbolColor": "", // 图标颜色
"symbolRotate": "", // 旋转角度
"symbolSize": "", // 符号大小
"symbolXOffset": "", // 符号X轴偏移
"symbolYOffset": "", // 符号Y轴偏移
},
"styleGroups": [ // 有对应UI
// field字段所对应专题图样式,默认用style
{
"start": 0, // 起始值
"end": 30, // 结束值
"style": {
// 分段样式,注意不可更改符号
"radius": 10, // 设定符号大小
"color": "FF9933" // 兼容三维,目前三维还是以绘制实心圆的方式,表示符号,需要设置color
},
},
],
}
}
# 热力图(HeatMap)配置规范
// 这个文件描述热力图配置信息
{
// ... // 其他同上方公共配置
// 样式配置
"themeStyle": {
// 热力图类型:MAPV | CESIUM,默认CESIUM
"type": "CESIUM", // 有对应UI
// 最小透明度
"minOpacity": 0,
// 最大透明度
"maxOpacity": 1,
// 颜色渐变
"gradient": { // 有对应UI
"0.25": "rgb(0,0,255)",
"0.55": "rgb(0,255,0)",
"0.85": "rgb(241,241,15)",
"1.0": "rgb(255,0,0)",
},
// ---- type 为 CESIUM 时的配置----
// 边界周围的额外空间
"spacing": 1,
// 透明度
"alpha": 1,
// 模糊值
"blur": 0.85, // 有对应UI
// 每个热力点半径大小
"radius": 20, // 有对应UI
// 是否聚合
"useClustering": true, // 有对应UI
// ---- type 为 MAPV 时的配置----
// 最大权重值
"max": 100, // 有对应UI
// 每个热力点半径大小
"size": 20, // 有对应UI
}
}
# 蜂窝图(HexBin)配置规范
// 这个文件描述蜂窝图配置信息
{
// ... // 其他同上方公共配置
// 样式配置
"themeStyle": {
// 最小透明度
"minOpacity": 0,
// 最大透明度
"maxOpacity": 1,
// 每个蜂窝半径大小
"size": 30, // 有对应UI
// 最大权重值
"max": 100, // 有对应UI
// 透明度
"globalAlpha": 0.5, // 有对应UI
// 标签样式
"label": {
"show": true,
"fillStyle": "white",
"shadowColor": "yellow",
"font": "15px Arial",
"shadowBlur": 10
},
// 颜色渐变
"gradient": { // 有对应UI
"0.25": "rgb(0,0,255)",
"0.55": "rgb(0,255,0)",
"0.85": "rgb(241,241,15)",
"1.0": "rgb(255,0,0)",
},
}
}
# 支持的节点类型
subjectConfig
描述的是专题配置,它由专题分类列表构成,每个专题分类下又可以划分为多个专题列表或直接包含多个专题,专题列表又可以划分专题列表或直接包含多个专题,这样,整个专题服务配置形成了一颗专题服务配置树。
类型 | 类型描述 |
---|---|
panel | 专题分类,专题配置树展开后第一级 |
list | 分类下的专题列表 |
subject | 专题 |
# 专题类型
类型 | 类型描述 |
---|---|
SubSectionMap | 分段专题图,前端分段专题图,支持点、线、区等类型 |
BaseMapWithGraph | 统计专题图,前端统计专题图 |
Label | 聚合标注专题图,基于地图文档或者图层的聚合标注 |
StatisticLabel | 等级符号专题图,以某一属性字段值作为标注的内容,不进行二次统计,展现方式类似于标注专题图 |
HeatMap | 热力图 |
HexBin | 蜂窝图 |
# 统计专题图类型
类型 | 类型描述 |
---|---|
point | 散点图 |
pie | 饼图 |
bar | 柱状图 |
bar3d | 3D 柱状图 |
line | 折线图 |
ring | 环状图 |