✅ 博主简介:擅长数据搜集与处理、建模仿真、程序设计、仿真代码、论文写作与指导,毕业论文、期刊论文经验交流。
✅ 具体问题可以私信或扫描文章底部二维码。
(1) 本文以遵义市为研究对象,基于遥感(RS)和地理信息系统(GIS)对土地生态安全状况进行了全面的评价研究。通过采用PSR(压力-状态-响应)框架理论模型,结合遵义市的实际情况与数据可获得性,选择了包括人口密度、植被覆盖度和人类活动强度在内的18个因子构建了土地生态安全评价指标体系。利用熵权法对各指标进行客观赋权,并通过综合指数法计算遵义市土地生态安全值,最终将其划分为安全级、良好级、临界级、敏感级和恶劣级五个等级。以1km×1km的格网为研究单元,对遵义市2003年至2017年的土地生态安全状况进行了空间和时间上的评价。结果显示,全市土地生态安全平均值均大于0.5,表明处于良好状态。红花岗区、汇川区和仁怀市的土地生态安全水平高于其他区市县,整体表现为南部地区的土地生态安全状况优于北部地区。在土地生态安全图谱中,全市以稳定型为主,占研究区总面积的73.04%,整体变化表现为北部比南部更稳定。从空间自相关分析来看,Moran's I指数分别为0.5881、0.559和0.585,表现出先减后增的趋势,整体较为稳定。局部空间自相关分析显示,不显著性为主,其中高-高型集聚区主要分布在市域的南部和西北部山地,而低-低型集聚区则主要分布在北部地区,且范围由北向南逐渐缩小。
(2) 在土地生态安全的未来预测方面,本文采用了CA-Markov模型,基于2003年和2010年的转移矩阵模块,对2017年和2024年的土地生态安全状况进行了预测。通过模型验证,得到2017年预测结果的Kappa系数为0.78,表明模型预测精度较高。在此基础上,预测了2024年土地生态安全状况,结果显示,2024年以良好级、安全级和临界级为主导,恶劣级、敏感级和临界级分别较2017年减少了7.8%、14.8%和23.71%,而良好级和安全级则分别增加了0.72%和39.13%,表明整体向良好级和安全级的转变十分明显。这一变化趋势表明,遵义市在未来几年中,土地生态安全状况有望进一步改善,尤其是在合理规划土地利用和减少人类活动对环境的破坏方面取得了显著成效。未来的管理和政策应当继续加强对生态脆弱区域的保护,推动整个区域向更高的生态安全等级转变。
(3) 为了进一步明确影响土地生态安全的关键因素,本文采用主成分因子分析法对遵义市土地生态安全的影响因子进行了深入分析,并将这些因子归纳为开发水平、生态水平、人类活动和地势条件四个主成分因子。分析结果表明,生态水平对土地生态安全具有显著的正相关性,每提升一个单位,生态安全指数相应增加0.01,表明提高生态水平有助于土地生态安全的提升。而开发水平、人类活动和地势条件对土地生态安全则表现为显著的负相关性,分别对生态安全指数产生降低0.037、0.007和0.006的影响。这表明,过度开发、人类活动的增强以及不利的地势条件都会对土地生态安全产生不利影响。因此,针对这些影响因素,本文提出了相应的对策与措施。首先,遵义市应坚守耕地数量和质量不减少的底线,确保土地资源的可持续利用。其次,应加强人才队伍建设,提升土地管理和生态保护的专业水平。再次,结合遵义市的自然条件和人文历史资源,积极发展生态旅游业,以此作为推动力,促进经济和环境的协调发展。此外,应合理调整土地利用结构,注重城市开发的有序性和可持续性,确保城市开发建设既能满足经济发展需求,又能维护和提升土地生态安全。最终目标是将遵义市建设成为一个人居环境优越的生态友好型城市,实现人类与自然的和谐共处。
import geopandas as gpd
import rasterio
import numpy as np
import matplotlib.pyplot as plt
from rasterio.plot import show
from sklearn.preprocessing import MinMaxScaler
# 读取土地生态安全数据栅格文件
land_safety_raster = 'zunyi_land_safety.tif'
with rasterio.open(land_safety_raster) as src:
safety_data = src.read(1)
profile = src.profile
# 对土地生态安全指数进行归一化处理
scaler = MinMaxScaler()
safety_normalized = scaler.fit_transform(safety_data.reshape(-1, 1)).reshape(safety_data.shape)
# 设置土地生态安全的分类阈值,划分不同的等级
safe_threshold = 0.7
moderate_threshold = 0.5
low_threshold = 0.3
high_safety_mask = np.where(safety_normalized >= safe_threshold, 1, 0)
moderate_safety_mask = np.where((safety_normalized >= moderate_threshold) & (safety_normalized < safe_threshold), 1, 0)
low_safety_mask = np.where(safety_normalized < moderate_threshold, 1, 0)
# 计算不同等级生态安全区域的面积占比
total_area = safety_data.size
high_safety_area = np.sum(high_safety_mask)
moderate_safety_area = np.sum(moderate_safety_mask)
low_safety_area = np.sum(low_safety_mask)
print(f"高生态安全区域占比: {(high_safety_area / total_area) * 100:.2f}%")
print(f"中等生态安全区域占比: {(moderate_safety_area / total_area) * 100:.2f}%")
print(f"低生态安全区域占比: {(low_safety_area / total_area) * 100:.2f}%")
# 显示土地生态安全等级图
fig, (ax1, ax2, ax3) = plt.subplots(1, 3, figsize=(18, 6))
ax1.set_title('High Safety Areas')
show(high_safety_mask, ax=ax1, cmap='Greens')
ax2.set_title('Moderate Safety Areas')
show(moderate_safety_mask, ax=ax2, cmap='Oranges')
ax3.set_title('Low Safety Areas')
show(low_safety_mask, ax=ax3, cmap='Reds')
plt.show()
# 保存高生态安全区域为新的栅格文件
output_path = 'high_safety_areas.tif'
with rasterio.open(output_path, 'w', **profile) as dst:
dst.write(high_safety_mask.astype(rasterio.uint8), 1)