初始化

2023/1/10

# gma.map.plot.MapFrame(Axes = None, BaseMapProj = 'WGS84', Extent = None)1.1.2 +


功能: 【类】。初始化一个地图框。

初始化:

 Axes = None||matplotlib.~.AxesSubplot。一个 matplotlib 子图。默认(None)自动创建子图。

 BaseMapProj = str||EPSG||WKT||Proj4||SpatRef||... 。底图坐标系,默认为 WGS84。

提示

后续添加的所有数据都会被重投影到此坐标系。

 Extent = tuple 。WGS84 坐标系下的绘图范围(左、下、右、上)。默认为底图坐标系所支持的最大范围。


已包含的类方法/属性:

序号 名称 描述 类型
M.1 AddLayer 添加图层(可以重复添加多个图层) 方法
M.1.1 AddLabel 添加 图层/要素 标注,为 layer /feature 模块相关子类的功能 子类方法
M.2 AddFeature 添加要素(可以重复添加多个要素) 方法
M.3 AddCompass 添加指北针 方法
M.4 AddGridLines 添加经纬网(仅经纬网线) 方法
M.5 AddLegend 为绘制的矢量图层、重分类或唯一值栅格数据集添加图例 方法
M.6 AddScaleBar 添加比例尺 方法
M.7 AddDataSetClassify 添加重分类栅格数据集图层 方法
M.8 AddDataSetDiscrete 添加离散型栅格数据集图层 方法
M.9 SetBackground 设置背景颜色 方法
M.10 SetFrame 设置地图框(包括刻度和经纬度的标注等) 方法
P.1 Axes <matplotlib.axes._subplots.AxesSubplot>。matplotlib 子图,可按需补充调整 属性
P.2 BaseMapProj <gma.map.rcs.SpatRef> 。底图坐标系(已初始化为空间参考) 属性
P.3 FrameFeature <gma.algos.dataio.veds.Feature> 。地图框 Feature(ProjWKT) 属性
P.4 GridLines list 。经度网 / 纬度网 ->(gma.map.feature.PlotFeature) 属性
P.5 PlotX list。所有绘制图层的返回值 属性
P.6 WorldFeature <gma.algos.dataio.veds.Feature> 。底图的最大范围 Feature(WGS84) 属性

示例:

from gma.map import plot
MapF = plot.MapFrame(BaseMapProj = 9311, Extent = None)
1
2

>>> <gma.map.layout.MapFrame at 0x......>

绘图流程的简单示例:

from gma.map import inres, plot
MapF = plot.MapFrame(BaseMapProj = 9311, Extent = None)

# 1.添加图层(可以重复添加多个图层)
MapL1 = MapF.AddLayer(inres.WorldLayer.Country, FaceColor = None, LineColor = 'gray', LineWidth = 0.1)
## 1.1 为此图层添加标注(标注属性表 'Name' 列)
MapL1.AddLabel(FieldName = 'Name', FontSize = 4)

# 2.添加经纬网
Grid = MapF.AddGridLines(LONRange = (-180, 180, 30), LATRange = (-90, 90, 15), LineWidth = 0.2)

# 3.设置地图框(包括刻度和经纬度的标注)
Frame = MapF.SetFrame(FrameWidth = 0.5, LabelFontSize = 7, TickLength = 0.008)

# 4.设置底图颜色
Background = MapF.SetBackground(Color = '#BEE8FF')

# *5.地图整饰要素
## 5.1 添加指北针
Compass = MapF.AddCompass(LOC = (0.06, 0.86), Width = 0.05, Color = 'black')
## 5.2 添加比例尺
ScaleBar = MapF.AddScaleBar(LOC = (0.02, 0), Width = 0.22, Color = 'black')
## 5.3 添加图例
Legend = MapF.AddLegend(LOC = (1, 0.1), NColumns = 1, TitleAlignment = 'left')
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24