Python 绘制等高线图需要准备数据,并使用 matplotlib
库中的 contour
或 contourf
函数进行可视化。等高线图数据通常来源于高程数据(DEM)或科学实验数据,可通过专业工具或数据网站获取。
1. 数据准备
- 数据来源:等高线图常用于展示地形高程分布,数据通常来源于 DEM(数字高程模型)文件。可以通过专业 GIS 工具(如 Global Mapper)生成等高线数据,或从公开数据源(如 ETOPO 数据集)下载高程数据。
- 数据格式:数据可以是二维数组或矩阵,使用
numpy
或pandas
处理后可直接用于绘图。
2. Python 绘图步骤
- 导入库:
python复制
import numpy as np import matplotlib.pyplot as plt
- 准备数据:
- 使用
numpy
生成或读取数据。 - 示例数据:
X, Y = np.meshgrid(np.linspace(-3, 3, 100), np.linspace(-3, 3, 100))
。 - 生成高程数据:
Z = np.sin(np.sqrt(X**2 + Y**2))
。
- 使用
- 绘制等高线图:
python复制
plt.figure(figsize=(8, 6)) plt.contour(X, Y, Z, levels=20, cmap='viridis') # 绘制等高线 plt.title('Contour Plot Example') plt.xlabel('X') plt.ylabel('Y') plt.colorbar() # 添加颜色条 plt.show()
3. 获取等高线数据
- DEM 数据下载:从公开资源(如 ETOPO 数据集)获取高程数据。
- 数据处理:使用工具(如 Global Mapper)将 DEM 数据转换为等高线图。
4. 数据可视化技巧
- 颜色映射:使用
cmap
参数调整颜色,突出显示不同高程范围。 - 等高线间隔:通过
levels
参数调整等高线间隔,使图表更清晰。
总结
Python 绘制等高线图需要准备高程数据,使用 matplotlib
库完成可视化。数据可以通过专业工具生成或从公开资源下载。掌握这些方法后,可以高效展示二维数据的空间分布特征。