numpy.unwrap()调用方法:

numpy.unwrap(p, discont=3.141592653589793, axis=-1)

各个参数意义:
p:输入数组。
discont:值之间最大的不连续的大小,默认为pi
axis:拆开沿着的坐标轴,默认为最后一个坐标轴
返回值:对数组中的元素间隔大于discont的进行拆分2pi的操作并返回。

为了解释这个问题,首先我们需要理解angle(角度)radian phase(弧度)的不同之处。

代码如下:

import numpy as npclass Debug:@staticmethoddef mainProgram():# angle角度值angle = np.array([0, 60, 120, 180, 240, 300, 360])# radianradian = angle / 360 * 2 * np.piprint('角度值为: ')print(angle)print('弧度制为: ')print(radian)if __name__ == "__main__":main = Debug()main.mainProgram()
"""
角度值为:
[  0  60 120 180 240 300 360]
弧度制为:
[0.         1.04719755 2.0943951  3.14159265 4.1887902  5.235987766.28318531]
"""

我们可以看到,实际上角度的360°对应弧度的2pi,因此我们可以得到其他角度对应的弧度值通过x / 360 * 2 * np.pi

代码如下:

import numpy as npclass Debug:@staticmethoddef mainProgram():phase = np.linspace(0, np.pi, num=5)phase[3:] += np.piprint('The value of phase is: ')print(phase)array = np.unwrap(phase)print('The value of array is: ')print(array)if __name__ == "__main__":main = Debug()main.mainProgram()
"""
The value of phase is:
[0.         0.78539816 1.57079633 5.49778714 6.28318531]
The value of array is:
[ 0.          0.78539816  1.57079633 -0.78539816  0.        ]
"""

我们可以看到,原始我们创建了一个一维数组,有五个元素,值位于0pi之间。然后我们将后两个值加了pi。当我们使用np.unwrap()的时候自动将大于pi的值减去了2pi。因此np.unwrap()相当于拆分了数组中的元素,给相位元素减去了2pi值。

但是会有如下的特殊情况出现,请看代码:

import numpy as npclass Debug:@staticmethoddef mainProgram():phase = np.linspace(0, 2 * np.pi, num=3)# phase[2] = phase[2] + 0.1print('The value of phase is: ')print(phase)array = np.unwrap(phase)print('The value of array is: ')print(array)if __name__ == "__main__":main = Debug()main.mainProgram()
"""
The value of phase is:
[0.         3.14159265 6.28318531]
The value of array is:
[0.         3.14159265 6.28318531]
"""

我们发现并没有出现任何变化,因为这时候数组元素之间的差值是pipi并不大于pi,所以并不会进行拆分操作。

如果我们对discont的值稍作改变。

import numpy as npclass Debug:@staticmethoddef mainProgram():phase = np.linspace(0, 2 * np.pi, num=3)phase[2] = phase[2] + 0.1print('The value of phase is: ')print(phase)array = np.unwrap(phase)print('The value of array is: ')print(array)if __name__ == "__main__":main = Debug()main.mainProgram()
"""
The value of phase is:
[0.         3.14159265 6.38318531]
The value of array is:
[0.         3.14159265 0.1       ]
"""

当我们给最后一个元素增加0.1后,phase数组中的第二个元素和第一个元素之间的差值大于了pi,因此此时对第二个元素进行了2pi拆分。得到了0.1

然而很神奇的是实际中对discont参数进行操作时无论如何设定discont值都没有作用。后续再做补充吧。。。

码字不易,如果大家觉得有用,请高抬贵手给一个赞让我上推荐让更多的人看到吧~

np.unwrap()函数相关推荐

  1. numpy的unwrap函数

    最近处理相位角的时候用到了这个函数,所以在这里稍稍用一点篇幅来记录一下我的理解. unwrap函数究竟是用来是用来干什么的呢?它是用来解卷绕的. 至于什么是卷绕,网上的说法是: 要计算一个系统相频特性 ...

  2. numpy使用np.argmax函数获取一维数组中最大值所在的索引(index of largest value in numpy array with np.argmax)

    numpy使用np.argmax函数获取一维数组中最大值所在的索引(index of largest value in numpy array with np.argmax) 目录 numpy使用np ...

  3. pandas使用np.where函数计算返回dataframe中指定数据列包含缺失值的行索引列表list

    pandas使用np.where函数计算返回dataframe中指定数据列包含缺失值的行索引列表list(index of rows with missing values in dataframe ...

  4. python使用numpy的np.float_power函数计算numpy数组中每个数值的指定幂次(例如平方、立方)、np.power函数默认返回整数格式、np.float_power函数返回浮点数

    python使用numpy的np.float_power函数计算numpy数组中每个数值的指定幂次(例如平方.立方).np.power函数默认返回整数格式.np.float_power函数默认返回浮点 ...

  5. python使用numpy的np.power函数计算numpy数组中每个数值的指定幂次(例如平方、立方)、np.power函数默认返回整数格式、np.float_power函数默认返回浮点数

    python使用numpy的np.power函数计算numpy数组中每个数值的指定幂次(例如平方.立方).np.power函数默认返回整数格式.np.float_power函数默认返回浮点数 目录

  6. numpy使用np.set_printoptions函数抑制numpy数组输出结果使用科学计数法进行显示(suppressing scientific notation in numpy array)

    numpy使用np.set_printoptions函数抑制numpy数组输出结果使用科学计数法进行显示(suppressing scientific notation in numpy array) ...

  7. python使用numpy的np.fmod函数计算numpy数组除以某一特定数值剩余的余数(remainder)、np.mod函数和np.fmod函数对负值的处理方式有差异

    python使用numpy的np.fmod函数计算numpy数组除以某一特定数值剩余的余数(remainder).np.mod函数和np.fmod函数对负值的处理方式有差异 目录

  8. python使用numpy中的np.mean函数计算数组的均值、np.var函数计算数据的方差、np.std函数计算数组的标准差

    python使用numpy中的np.mean函数计算数组的均值.np.var函数计算数据的方差.np.std函数计算数组的标准差 目录

  9. python使用np.logspace函数在对数刻度上创建一个对数等距数组实战:在对数刻度上创建一个数组(指定数值个数以及是否包含末尾界值)、使用不同的基数(底数)在对数刻度上构建等距数组、可视化

    python使用np.logspace函数在对数刻度上创建一个对数等距数组实战:在对数刻度上创建一个数组(指定数值个数以及是否包含末尾界值).使用不同的基数(底数)在对数刻度上构建等距数组.可视化 目 ...

最新文章

  1. 南洋理工大学研发植物“通信”设备,未来可成为环境探测器
  2. efficientransac_【泡泡图灵智库】基于图割优化的RANSAC算法(CVPR)
  3. Nginx反向代理Redis服务
  4. 那些年黑了你的微软BUG
  5. mysql 最小值对应的其他属性_查询最小值对应的非group by字段
  6. 反射:类,构造器,方法使用
  7. c语言程序转python_C语言程序转换为Python语言
  8. 微讲师录课软件下载、录屏软件下载
  9. .axf文件_一文看懂hex文件、bin文件、axf文件的区别
  10. 几种统计图表的作用和区别
  11. python3 字典_Python3字典
  12. mysql替代符号,mysql特殊符号
  13. python开发要学什么_运维为什么要学编程?编程为什么是Python?
  14. 机器学习实战——疫情数据分析与预测
  15. 解决ES数据偏移问题
  16. OpenJudge NOI 1.8 20:反反复复
  17. Python爬虫-Selenium(1)
  18. 求职经历--ThoughtWorks
  19. PCR主成分回归预测MATLAB代码 代码注释清楚。 main为主程序,读取EXCEL数据
  20. 歌手祁隆离婚再起波澜,与和合国际收购《借我星光》版权有关系吗

热门文章

  1. IBM MQ通道接收端绑定步骤
  2. BLUEMOON: 2021
  3. uniapp 提供的手指事件
  4. RFP红色荧光蛋白抗体——Nature、Cell高分文章
  5. Low-light images enhancement系列:Kindling the Darkness: A Practical Low-light Image Enhancer
  6. fgo显示服务器内部错误,fgo服务器数据库异常
  7. Resilience4j:请求1秒超时504,Response took longer than configured timeout
  8. 国内比较有实力的调查研究咨询公司
  9. threejs 展示gltf模型加了环境光,全黑
  10. LabVIEW条件结构