Index
📖 阅读信息
阅读时间:2 分钟 | 中文字符:857
软件的配置¶
首先,我处理数据使用的是 Python 工具,环境版本为 Python 3.12
环境中的软件包及版本如下
| 软件包 | 版本 | 最新版本 |
|---|---|---|
| Jinja2 | 3.1.6 | 3.1.6 |
| MarkupSafe | 3.0.3 | 3.0.3 |
| contourpy | 1.3.3 | 1.3.3 |
| cycler | 0.12.1 | 0.12.1 |
| et_xmlfile | 2.0.0 | 2.0.0 |
| fonttools | 4.61.1 | 4.61.1 |
| kiwisolver | 1.4.9 | 1.4.9 |
| matplotlib | 3.10.8 | 3.10.8 |
| numpy | 2.4.0 | 2.4.0 |
| openpyxl | 3.1.5 | 3.1.5 |
| packaging | 25.0 | 25.0 |
| pandas | 2.3.3 | 2.3.3 |
| pillow | 12.0.0 | 12.0.0 |
| pip | 23.2.1 | 25.3 |
| prettytable | 3.17.0 | 3.17.0 |
| pyecharts | 2.0.9 | 2.0.9 |
| pyparsing | 3.3.1 | 3.3.1 |
| python-dateutil | 2.9.0.post0 | 2.9.0.post0 |
| pytz | 2025.2 | 2025.2 |
| scipy | 1.16.3 | 1.16.3 |
| simplejson | 3.20.2 | 3.20.2 |
| six | 1.17.0 | 1.17.0 |
| tzdata | 2025.3 | 2025.3 |
| wcwidth | 0.2.14 | 0.2.14 |
主要用到的库有:
pyecharts:Echarts 是一个由百度开源的数据可视化,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可。而 Python 是一门富有表达力的语言,很适合用于数据处理。当数据分析遇上数据可视化时,pyecharts 诞生了。
本次的数据可视化都是使用pyecharts的基本语法以及学习官方教程制作的numpy:Python中专门用于数值计算的第三方库,本次数据处理中很多的数组计算、均方值计算都是使用numpySciPy:基于numpy的基础数组能力上的库,用于信号处理、傅里叶变换、统计分析等等json:内置的标准库,用于跨语言的数据传输,在本次数据处理中用于处理加速度导出的json文件
文件目录¶
- gps 可视化.py
读取原始的 csv 文件(","分割不同行),提取时间、维度、经度、海拔、速度等等数据到新的二维列表中
将列表数据传递到Scatter3D对象中,设置参数进行绘图 - gps.html:
gps 可视化.py绘图的结果,可以调节左右和下方的图例实现查看不同的速度、高度和时间下的轨迹,可以实现放大缩小的操作(之后的绘图结果也有类似的效果) - 加速度.html:
加速度可视化.py的绘图结果 - 加速度可视化.py:
读取源文件转化的json文件,同样将文件中的时间、加速度等等数据添加到新的二维列表中,之后进行简单的滤波操作和每隔 0.5 秒取一个数据点,同样,将处理后的数据传递到line对象中,进行绘图 - 动力性分析.html:
动力性分析.py的绘图结果 - 动力性分析.py:
将前两个处理得到的速度,纵向加速度,时间数据(加速度时间)导入
但是由于速度是每隔 1 s 取样,且开始时间不一定与加速度对应(两部手机),所以对加速度以及时间进行取样,并且速度加速度取样时错开取样,使得绘图曲线保持同步(之后涉及到两个文件数据的都进行类似的操作)
但是这样操作有可能把原来的迟滞给减弱 - 平顺性分析.html:
平顺性分析.py的绘图结果 - 平顺性分析.py:
同理,取得垂向加速度、时间和海拔的数据进行绘图 -
平顺性分析 2.py:
取一段加速度数据进行分析
将加速度的列表转换为数组数据进行处理:- 拉式变换
- 乘以对应的分段加权函数 \(w(f)\)
- 反变换
- 求出均方值
使用的公式为:
\[ a_\mathrm{w}=\left[\frac{1}{T}\int_0^Ta_\mathrm{w}^2(t)\mathrm{d}t\right]^\frac{1}{2} \]最后得到的结果就是加速度均方值
-
操纵稳定性分析.html:
操纵稳定性分析.py的绘图结果 - 操纵稳定性分析.py:
进行侧向加速度与朝向(direction)随时间的变化曲线的绘图 - 操纵稳定性分析 2.html:
操纵稳定性分析2.py的绘图结果 - 操纵稳定性分析 2.py:
进行侧向加速度与横摆角速度随时间变化曲线的绘图
横摆角速度是对朝向关于时间差分得到的
最后计算了侧向加速度与横摆角速度的皮尔逊相关系数