Python绘制景点距离图:热力图可视化教程
Python绘制景点距离图:热力图可视化教程
本文将介绍如何使用Python的matplotlib库绘制景点距离图,并将距离数据可视化为热力图。
数据准备
假设我们有8个景点,它们之间的距离存储在一个二维列表中:pythondistances = np.array([[0, 300, 360, 210, 530, 475, 500, 690], [300, 0, 380, 270, 230, 285, 200, 390], [360, 380, 0, 510, 230, 665, 490, 680], [210, 270, 510, 0, 470, 265, 450, 640], [530, 230, 230, 470, 0, 515, 260, 450], [475, 285, 665, 265, 515, 0, 460, 650], [500, 200, 490, 450, 260, 460, 0, 190], [690, 390, 680, 640, 450, 650, 190, 0]])
代码实现
以下代码使用matplotlib库将距离数据绘制成热力图:pythonimport matplotlib.pyplot as pltimport numpy as np
... (distances 数组定义如上)
plt.imshow(distances, cmap='hot', interpolation='nearest')plt.colorbar(label='Distance')plt.xticks(np.arange(len(distances)), np.arange(1, len(distances)+1))plt.yticks(np.arange(len(distances)), np.arange(1, len(distances)+1))plt.xlabel('Destination')plt.ylabel('Source')plt.title('Distance between Destinations')plt.show()
代码解释
import matplotlib.pyplot as plt和import numpy as np:导入必要的库。2.plt.imshow(distances, cmap='hot', interpolation='nearest'):使用imshow函数绘制热力图。 -distances:包含距离数据的数组。 -cmap='hot':使用 'hot' 颜色映射,颜色越暖表示距离越近。 -interpolation='nearest':使用最近邻插值方法,使颜色块边界更清晰。3.plt.colorbar(label='Distance'):添加颜色条,并设置标签为 'Distance'。4.plt.xticks(...)和plt.yticks(...):设置 x 轴和 y 轴的刻度标签,使其显示景点编号 (1-8)。5.plt.xlabel('Destination'),plt.ylabel('Source'),plt.title('Distance between Destinations'):设置图表标题和轴标签。6.plt.show():显示绘制的图表。
结果展示
运行代码后,你将看到一个热力图,其中每个格子代表两个景点之间的距离。颜色越暖表示距离越近,颜色越冷表示距离越远。
通过这种方式,我们可以直观地了解各个景点之间的距离关系,例如哪些景点距离较近,哪些景点距离较远。这对于旅行路线规划和景点推荐等应用场景非常有用。
原文地址: https://www.cveoy.top/t/topic/fPRg 著作权归作者所有。请勿转载和采集!