尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

3步画出你家Wi-Fi热力图:wifi-heat-mapper从入门到出图完整指南

3步画出你家Wi-Fi热力图:wifi-heat-mapper从入门到出图完整指南 3步画出你家Wi-Fi热力图wifi-heat-mapper从入门到出图完整指南【免费下载链接】wifi-heat-mapperwhm also known as wifi-heat-mapper is a Python library for benchmarking Wi-Fi networks and gather useful metrics that can be converted into meaningful easy-to-understand heatmaps.项目地址: https://gitcode.com/gh_mirrors/wi/wifi-heat-mapper你是否经历过这样的场景客厅里刷视频流畅无比一走进卧室就转圈加载路由器明明就在书房阳台的信号却总让人抓狂。Wi-Fi热力图正是解决这类玄学网络问题的利器——而 wifi-heat-mapper简称 whm就是一款能帮你把全屋无线网络性能画成一张直观热力图的 Python 开源工具。今天这篇文章就带零基础的你走完从安装到出图的完整流程。wifi-heat-mapper是什么把感觉变成证据过去判断网络好坏靠的是站在不同角落反复测速、凭感觉记数据。wifi-heat-mapper 想做的事情很简单你在房间里按点采样它把这些离散数据补全成整张平面的颜色分布图。从采样、测量到插值出图这一整套 Wi-Fi 热力图生成方案让哪里信号强、哪里网速快不再靠猜而是有图有真相。它主要面向三类人群家庭用户想知道 Mesh 节点放哪儿最合适、哪间房是信号死角网络工程师验证 AP 部署方案、排查干扰源Homelab 爱好者折腾软路由、无线网卡时的性能验证工具值得一提的是这个项目几乎完全为 Linux 环境打造x86_64底层依赖 iperf3、matplotlib、scipy 等成熟组件属于小而精的实用派工具。一次测量三个维度的收获wifi-heat-mapper 的核心亮点在于它不是单一指标的测速工具而是把网络性能拆成了三个层面来评估你可以按需勾选想要的热力图。维度代表指标数据来源信号层信号强度dBm、信号质量满分70 / 百分比无线网卡iw 命令链路层TCP/UDP 上下行吞吐、UDP 抖动iperf3 服务端应用层延迟、抖动、上下行带宽Ookla / Librespeed / Sivel 测速比如下图这张 Wi-Fi 信号强度热力图右侧色标从 -38.4 dBm 到 -96.0 dBm橙色圆点是基站AP位置深蓝圆点是采样点。可以看到信号围绕 AP 呈中心强、边缘弱的自然衰减趋势房间角落的覆盖短板一目了然。更实用的是你还可以同时生成下载带宽热力图。同样是这套采样数据它展示的却是实际网速信号强不代表速度快通过对比两张图你能快速区分覆盖死角和性能瓶颈是两种完全不同的问题。它凭什么把散点变成热力图这里要简单聊一下背后的原理。采集到的数据本质上是若干个坐标点 指标值的三元组就像地图上的海拔标注点。要生成连续的无线网络性能热力图就得靠插值算法把空白区域猜出来。wifi-heat-mapper 选用的是 scipy 提供的径向基函数RBF插值它在处理非均匀分布的采样点时表现稳定特别适合 Wi-Fi 数据这种哪里方便就在哪儿测的采集方式。在wifi_heat_mapper/graph.py中核心流程并不复杂from scipy.interpolate import Rbf # 把每个采样点的坐标(x,y)和指标值(z)收集起来 points_x, points_y, values [], [], [] # 用 RBF 拟合出整个平面的函数 interpolator Rbf(points_x, points_y, values) # 在平面网格上逐点求值得到完整的热力图数据这段代码解决的问题很直观你只有十几个采样点却想要覆盖整张平面图的完整数据RBF 就是那座桥梁。值得一提的是工具还会自动在平面图四角补上边界点避免热力图边缘出现刺眼的空白带这个细节对观感提升很大。30分钟上手从安装到第一张热力图说再多不如动手。下面是一套经过整理的完整流程跟着走半小时内就能拿到你自己的第一张热力图。第1步准备环境先确认三件事Python 3.10 及以上版本、系统装有 Tkinter 图形库、无线网卡处于可用状态。Tkinter 默认不随 Python 安装需要按发行版手动安装# Debian / Ubuntu sudo apt install python3-tk # Fedora / CentOS sudo dnf install python3-tkinter第2步安装 whm 并起一个 iperf3 服务端安装很简单一行命令即可pip install whm热力图需要真实测量数据所以你得先找一台有线连接的电脑或虚拟机当基准点在上面运行iperf3 -s它会监听默认的 5201 端口等待你的无线设备来测速。第3步生成配置文件在你准备跑测试的无线设备上执行whm bootstrap按提示依次回答无线网卡名一般是 wlan0、确认当前连接的 SSID、重复测几次建议 3 次以上取平均、选择要生成的图可以直接输入 all 全选。完成后当前目录会生成一个config.json。第4步在平面图上踩点测量这是最有意思的一步。先准备一张你家的户型图拍照片或截图都行然后执行whm benchmark -m 户型图.png -s 192.168.1.100 -c config.json-m指定平面图-s填 iperf3 服务端 IP-c指向刚才生成的配置。命令会弹出一个加载了户型图的 GUI 窗口操作逻辑很简单左键点击放置采样点 →右键选择Benchmark开始测量 → 圆圈变蓝表示测完。工具要求至少 4 个点才能出图建议在客厅、卧室、阳台、卫生间都布上点点越多热力图越准确。第5步一键出图采完所有点后点击Save Results保存数据再执行whm plot -m 户型图.png -c config.json -l 100 -d 300 -f png-l控制等值线数量默认100-d是图片分辨率 DPI默认300-f是导出格式支持 png、pdf、svg 等。几秒后当前目录就会出现你勾选过的所有热力图。新手避坑清单采点太少出图不准至少 10 个点起步覆盖所有房间角落iperf3 服务端要用网线无线测无线没有参考价值记得保存再 Plot没点Save Results直接 Plot 会丢数据信号强度是负数-40 dBm 比 -80 dBm 强别被数字大小误导两个真实场景它到底能帮你解决什么场景一家庭 Mesh 路由摆放小李家 120 平主路由在客厅次卧总是卡。他用 whm 跑了一轮全屋信号质量测量发现主卧和阳台的信号质量跌到了 30 分以下满分 70。把 Mesh 子节点移到走廊尽头后重新测量两个房间的信号质量都回升到 55 分以上——移动一个插头的位置比加钱换路由器管用得多。场景二办公室 AP 部署验证公司茶水间附近 WiFi 频繁掉线工程师用 whm 在办公区按网格采样生成了下载带宽热力图发现茶水间区域带宽骤降到 0.5 MiB/s 以下而周围工位都正常。排查后发现是咖啡机旁的微波炉支架干扰了信号路径调整 AP 天线角度后问题消失。这种用数据说话的排查方式比逐个工位问你卡不卡高效太多。进阶玩法从能用到玩得转当基础流程跑通后你会发现 whm 的可玩性还不止于此参数调优whm plot的-l和-d参数可以控制热力图的细腻程度输出 PDF 矢量图还能直接塞进验收报告多楼层管理每层一张户型图、一份配置文件分开测量互不干扰二次开发项目按config.py指标定义、graph.py绘图、gui.py界面、misc.py底层调用做了清晰分层想新增指标或接自己的测速后端改起来并不难配合自动化bootstrap 生成的 JSON 配置可以提前写好配合脚本批量执行重复测量如果你也想参与贡献项目欢迎 Pull Request提交前记得跑一遍python3 -m ruff check .保持代码风格一致。写在最后wifi-heat-mapper 的价值在于把感觉网络不好变成了看见网络不好——它让信号强度、吞吐量这些枯燥的数字变成一张张直观的 Wi-Fi 热力图帮你少走弯路、少花冤枉钱。如果这篇文章对你有帮助欢迎去仓库把项目 clone 下来亲手试试git clone https://gitcode.com/gh_mirrors/wi/wifi-heat-mapper也欢迎给它点个 star、提提 issue让这个开源小工具变得更好用。下一次当你再被薛定谔的网速折磨时不妨先画一张 Wi-Fi 热力图答案可能就在图里。【免费下载链接】wifi-heat-mapperwhm also known as wifi-heat-mapper is a Python library for benchmarking Wi-Fi networks and gather useful metrics that can be converted into meaningful easy-to-understand heatmaps.项目地址: https://gitcode.com/gh_mirrors/wi/wifi-heat-mapper创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表