Python绘制Excel二维坐标距离图:16点与148点距离可视化
Python绘制Excel二维坐标距离图:16点与148点距离可视化
本文将介绍如何使用Python读取Excel文件中的二维坐标数据,并计算16个坐标点与148个坐标点之间的距离,最后使用图表展示距离分布。
步骤详解:
-
导入必要库:
python import openpyxl import numpy as np import matplotlib.pyplot as plt -
读取Excel数据: ```python # 加载Excel文件 wb = openpyxl.load_workbook('coordinates.xlsx') ws = wb.active # 获取活动工作表
读取16个坐标点数据 (假设数据在第2行到第17行) coordinates_16 = [(row[0].value, row[1].value) for row in ws.iter_rows(min_row=2, max_row=17)]
读取148个坐标点数据 (假设数据在第19行到第166行) coordinates_148 = [(row[0].value, row[1].value) for row in ws.iter_rows(min_row=19, max_row=166)] ```
-
计算距离:
python distances = [] for coord1 in coordinates_16: for coord2 in coordinates_148: distance = np.linalg.norm(np.array(coord1) - np.array(coord2)) distances.append(distance) -
绘制距离分布图:
python plt.figure() plt.hist(distances, bins=20, edgecolor='black') plt.title('16点与148点距离分布图') plt.xlabel('距离') plt.ylabel('频数') plt.show()
代码说明:
- 我们使用
openpyxl库读取Excel文件和数据。*np.linalg.norm()用于计算两点之间的欧氏距离。*matplotlib.pyplot用于绘制距离分布直方图。
注意事项:
- 请将代码中的'coordinates.xlsx'替换为实际文件名。* 根据数据在Excel表格中的实际位置修改代码中读取数据的行号范围。
通过以上步骤,你可以轻松地使用Python处理Excel中的坐标数据,并直观地展示距离分布情况。 这项技能在数据分析、地理信息系统等领域有着广泛的应用。
原文地址: https://www.cveoy.top/t/topic/vQg 著作权归作者所有。请勿转载和采集!