知名網(wǎng)站建設(shè)定制如何聯(lián)系百度客服
了解 gma
gma 是什么?
gma 是一個(gè)基于 Python 的地理、氣象數(shù)據(jù)快速處理和數(shù)據(jù)分析函數(shù)包(Geographic and Meteorological Analysis,gma)。gma 網(wǎng)站:地理與氣象分析庫。
gma 的主要功能有哪些?
氣候氣象(例如 SPEI、SPI、ET0 等)。
遙感指數(shù)(例如 NDVI、EVI、TVDI 等)。
數(shù)學(xué)運(yùn)算(例如 數(shù)據(jù)平滑、評(píng)估、濾波、拉伸、增強(qiáng)變換等)。
系統(tǒng)交互(例如 獲取路徑、重命名、壓縮等操作)。
空間雜項(xiàng)(例如 計(jì)算空間距離、面積計(jì)算,坐標(biāo)轉(zhuǎn)換、空間插值等操作)。
柵格處理(例如 柵格鑲嵌、裁剪、重采樣、重投影、格式轉(zhuǎn)換、數(shù)據(jù)融合等)。
柵格分析(例如 DEM 坡度、坡向、陰影、等值線等計(jì)算)。
矢量處理(例如 矢量裁剪、擦除、交集、融合、重投影等)。
地圖工具(例如 柵格、矢量數(shù)據(jù)繪圖,指北針、比例尺等生成,坐標(biāo)系定義等)
gma 的安裝要求?
系統(tǒng) (X64): Window 10+,Linux
Python 版本: 3.8.8 ~ 3.10,建議使用 3.9
gma 哪個(gè)版本開始支持空間繪圖?
gma 1.1.2 及之后的版本
點(diǎn)擊查看:gma 1.1.2 版本的新增內(nèi)容
了解古代洛陽 5 大都城遺址
歷史上,夏、商、西周、東周、東漢、曹魏、西晉、北魏、隋、唐(含武周)、后梁、后唐、后晉等朝代先后在洛陽建都。洛陽的都城史長達(dá)1500年,是我國建都年代最早、朝代最多、時(shí)間最長的古都。
入選“百年百大考古發(fā)現(xiàn)”的五大都城遺址均分布在洛陽盆地腹心的伊洛平原上,沿洛河一線從東到西分別為偃師商城(商西亳城)、夏都二里頭(夏斟鄩城)、漢魏洛陽城(周成周城、漢晉洛陽城、北魏洛陽城)、隋唐洛陽城和周王城。它們的東西距離只有30多公里,如此密集的都城分布舉世罕見,人稱“五都薈洛”。
注:周洛邑包含兩座城:成周和王城。
開始繪制
數(shù)據(jù)準(zhǔn)備
- 5大都成遺址矢量(.shp)文件:
鏈接:https://pan.baidu.com/s/1BSDJT0AKOyJ2BC9xz9J5Yw?pwd=oljj
提取碼:oljj- 衛(wèi)星影像底圖:谷歌影像下載后保存為 .tif 文件。
繪圖代碼
import gma
from gma.map import plot, rcs# 0.數(shù)據(jù)準(zhǔn)備
DuChengDS = gma.Open('5大都城遺址.shp')
DuChengLayer = DuChengDS.GetLayer(0)
TCI = gma.Open('LY-TCI.tif')# 1.初始化一個(gè)地圖框
MapF = plot.MapFrame(BaseMapProj = 3857, Extent = [112.35, 34.58, 112.8, 34.8])# 1. 添加圖層
## 1.1 添加 5 大都城遺址矢量
MapL1 = MapF.AddLayer(DuChengLayer, FaceColor = Colors, EdgeColor = 'gray', LineWidth = 0.1, Zorder = 1)
## 1.1.1 添加標(biāo)注
MapL1.AddLabel(FieldName = ['Name', 'Time'], Connector = '\n', Font = 'KaiTi', FontSize = 6.5, Color = '#8B0000')# 1.2 添加影像底圖
MapD1 = MapF.AddDataSetDiscrete(TCI)# 2.添加經(jīng)緯網(wǎng)
Grid = MapF.AddGridLines(LONRange = (112.4, 112.8, 0.1), LATRange = (34.53, 44.83, 0.1), LineWidth = 0.2, LineColor = '#FFD700')# 3.設(shè)置地圖框(包括刻度和經(jīng)緯度的標(biāo)注)
Frame = MapF.SetFrame(FrameWidth = 0.5, LabelFontSize = 7, TickLength = 0.008, Precision = 2)# *4.地圖整飾要素(太丑了,可以不加)
## 4.1 添加指北針
Compass = MapF.AddCompass(LOC = (0.06, 0.8), Width = 0.05, Color = '#FFA500')
## 4.2 添加比例尺
ScaleBar = MapF.AddScaleBar(LOC = (0.1, 0.1), Width = 0.22)
干凈清爽不帶底圖的
import gma
from gma.map import plot, rcs# 0.數(shù)據(jù)準(zhǔn)備
DuChengDS = gma.Open('5大都城遺址.shp')
DuChengLayer = DuChengDS.GetLayer(0)
TCI = gma.Open('LY-TCI.tif')# 1.初始化一個(gè)地圖框
MapF = plot.MapFrame(BaseMapProj = 3857, Extent = [112.35, 34.58, 112.8, 34.8])# 1. 添加圖層
## 1.1 添加 5 大都城遺址矢量
MapL1 = MapF.AddLayer(DuChengLayer, FaceColor = Colors, EdgeColor = 'gray', LineWidth = 0.1, Zorder = 1)
## 1.1.1 添加標(biāo)注
MapL1.AddLabel(FieldName = ['Name', 'Time'], Connector = '\n', Font = 'KaiTi', FontSize = 6.5, Color = '#8B0000')# 2.添加經(jīng)緯網(wǎng)
Grid = MapF.AddGridLines(LONRange = (112.4, 112.8, 0.1), LATRange = (34.53, 44.83, 0.1), LineWidth = 0.2, LineColor = '#FFD700')# 3.設(shè)置地圖框(包括刻度和經(jīng)緯度的標(biāo)注)
Frame = MapF.SetFrame(FrameWidth = 0.5, LabelFontSize = 7, TickLength = 0.008, Precision = 2)# *4.地圖整飾要素(太丑了,可以不加)
## 4.1 添加指北針
Compass = MapF.AddCompass(LOC = (0.06, 0.8), Width = 0.05, Color = '#FFA500')
## 4.2 添加比例尺
ScaleBar = MapF.AddScaleBar(LOC = (0.1, 0.1), Width = 0.22)